【发布时间】:2017-03-26 02:32:05
【问题描述】:
我有以下 HTML:
<input type="text" name="inp1" id="inp1" />
<input type="text" name="inp2" id="inp2" />
<input type="text" name="inp3" id="inp3" />
<input type="submit" value="Send" id="clickMe" />
每次我点击提交按钮时,我都应该将每个 inp* 的值添加到一个数组中,所以我最终会得到这样的结果:
[
['inp1' => val1, 'inp2' => val2, 'inp3' => val3],
['inp1' => val10, 'inp2' => val20, 'inp3' => val30],
['inp1' => val11, 'inp2' => val21, 'inp3' => val31],
['inp1' => val12, 'inp2' => val22, 'inp3' => val32]
]
阅读this article后,我认为我可以做到以下几点:
var obj = {};
var item = [];
$('#clickMe').click(function() {
item.push(
$('#inp1').val(),
$('#inp2').val(),
$('#inp3').val()
);
});
但是上面的解决方案最终会得到一个线性数组,而不是我想要的(例如 Fiddle 上的 here)。我已经阅读了here 和here,但我很困惑。
我也不应该有重复的元素,所以这个:
[
['inp1' => val1, 'inp2' => val2, 'inp3' => val3],
['inp1' => val1, 'inp2' => val2, 'inp3' => val3]
]
无效。那么,如何正确处理这个问题并获得一个多维数组呢?任何人都可以给我一些帮助并留下一个例子以便我得到这个吗?
编辑:建议代码应该与大多数浏览器兼容,而 IE 应该是 IE9+
【问题讨论】:
-
问题是如何创建数组,如何避免重复,或者如何通过 Ajax 发送?你有什么代码?
-
@trincot 我正在编辑,现在看一下,简而言之:如何创建多维数组并避免重复
标签: javascript jquery arrays