【发布时间】:2015-09-04 05:40:08
【问题描述】:
我有一个拖放系统,每个拖放的项目都会收到三个数据属性。
- 数据ID
- 数据顺序
- 数据内容
现在我应该将这些属性放入一个多维数组中。它应该是这样的:
data-order = "0" [data-id = "1", data-content = "blabla"]; data-order = "1" [data-id = "2", data-content = "another content"];
但我不知道如何实现这一点。还没有在 jQuery 中使用数组。
感谢您的帮助!
这是我一直在尝试的,但没有成功:
<li class="dropped" data-order="0" data-id="1" data-content="blabla"></li>
<li class="dropped" data-order="0" data-id="2" data-content="another content"></li>
$(".send").click(function() {
var itterate = $(".dropped");
var data_array = new Array();
for (var i in itterate.data()) {
var sub_array = new Array();
sub_array['data-order'] = i;
sub_array['data-id'] = itterate.data()[i];
sub_array['data-content'] = itterate.data([i]);
data_array.push(sub_array);
}
var serialized = $.param(itterate.serializeArray().concat(data_array));
$("#result").text(serialized);
});
这是jsfiddle
【问题讨论】:
-
我可以问一下这段代码到底有什么不工作的吗?你能提供一个jsFiddle吗?
-
代码中的
i包含值order、id、content,而不是每个项目。您实际上是在循环数据类型而不是li项目本身。
标签: jquery arrays serialization multidimensional-array