Javascript中的关联样式数组?

cjm*_*671 1 javascript jquery

我试图在JS中以关联数组的样式分配一个对象,但它失败了,说'task.id'是未定义的.为什么是这样?

var response = Object();
$('.task-list').each(function() {
  response[this.id][$('#' + this.id).sortable('toArray')];
});
Run Code Online (Sandbox Code Playgroud)

Tom*_*ard 5

您将对象引用为二维数组.

你应该这样做:

var response = {};
$(".task-list").each(function () {
    response[this.id] = $(this).sortable('toArray');
}
Run Code Online (Sandbox Code Playgroud)

另外,当你说错误是"task.id is undefined"时,你的意思是"this.id未定义"?如果您基于类选择元素,则它们可能没有明确的ID.

<span class="task-list">myTask</span>
Run Code Online (Sandbox Code Playgroud)

您可能想要包含一个ID:

<span class="task-list" id="myTask">myTask</span>
Run Code Online (Sandbox Code Playgroud)