【发布时间】:2018-10-04 09:59:27
【问题描述】:
我有一个动态表单,您可以在其中单击一个按钮,然后将一个新的表单行添加到表单中。表单条目如下所示:
<input type='text' class='custom' data-index='".$f."' name='column_value_one' value='1'>
<input type='text' class='custom' data-index='".$f."' name='column_value_two' value='2'>
例如,我添加了上面的 3 行,data-index 是 0 到 3。我尝试通过执行以下操作来处理它:
var data = [];
$(".custom").each(function() {
var index = parseInt($(this).attr('data-index'));
data[index][$(this).attr("name")] = $(this).val();
});
我正在尝试得到以下结果:
data[0]['column_value_one'] = 1;
data[0]['column_value_two'] = 2;
data[1]['column_value_one'] = 1;
data[1]['column_value_two'] = 2;
我通常只编写 PHP,因此我按照上面的方式布置数组。但这将是一个 Javascript/Jquery 数组而不是 PHP。
我会很感激这里的任何帮助。
【问题讨论】:
-
我应该提到 $f 是由 PHP 循环生成的,因为每组两个都会有一个新的数据索引 id
-
真正的问题是什么?似乎使用
map()和父元素的实际index()可能是比从服务器输出每个元素中的静态值更好的解决方案。 -
查找最后一个输入并在点击时添加最后一个输入的 +1 值
-
它给了我响应Cannot set property 'column_value_one' of undefined
标签: javascript php jquery arrays