【发布时间】:2015-02-12 10:53:27
【问题描述】:
我知道关于这个问题有很多话题,但相信我,我阅读了所有这些话题,但没有一个对我有用:/
顺便说一句,我使用 laravel-4
我的表格:
<div id="input1" style="margin-bottom:4px;" class="clonedInput">
Name: <input type="text" name="name1" id="name1" />
</div>
<div>
<input type="button" id="btnAdd" value="add another name" />
<input type="button" id="btnDel" value="remove name" />
</div>
我的 Js:
('#btnAdd').click(function() {
var num = $('.clonedInput').length;
var newNum = new Number(num + 1);
var newElem = $('#input' + num).clone().attr('id', 'input' + newNum);
newElem.children(':first').attr('id', 'name' + newNum).attr('name', 'name' + newNum);
$('#input' + num).after(newElem);
$('#btnDel').attr('disabled','');
if (newNum == 5)
$('#btnAdd').attr('disabled','disabled');
});
$('#btnDel').click(function() {
var num = $('.clonedInput').length;
$('#input' + num).remove();
$('#btnAdd').attr('disabled','');
if (num-1 == 1)
$('#btnDel').attr('disabled','disabled');
});
$('#btnDel').attr('disabled','disabled');
在我的控制器上:(只是为了检查 var 上是否有任何东西)
$child = Input::get('name2');
return $child;
如你所见,我试图只返回第二个名字,因为第一个工作(因为它是静态的,不是由 jquery 生成的)
我的问题是,有什么问题吗?如何从其他生成的字段(最多 5 个)中检索值(name1 工作正常 [cuz static]、name2、name3、name4、name5)?
在此先感谢,我有一整个后端等着我:/。
帮助我 StackOverflow,你是我唯一的希望(得到报价了吗?)哈哈 ;)
http://pastebin.com/VpWq0x43(我的整个视图/表单页面)
【问题讨论】:
-
你如何发布数据? Ajax 或提交。
-
您的代码对我来说运行良好。经过一点重构。当您运行它时,您确实会看到正在生成新的表单输入,对吧?问题只是您的服务器帖子没有获得“正确”的表单数据吗?
-
您到底想要什么?你想要数组还是想要动态,那么你必须处理很多事情并传递其他信息,如最大索引值。
-
是的,每当我单击它生成的添加另一个名称并从浏览器的源代码视图中检查时,是的,但事实是没有,nada,返回 0 数据,甚至不是 null,就像这个领域一开始就不存在一样:/
-
浏览器“源代码”视图可能不会更新。但是,如果您在浏览器中运行 javascript 控制台并执行“$('.clonedInput').length”,我敢打赌您会看到新项目。
标签: javascript jquery laravel laravel-4