为什么每个语句都会导致我的代码中断?我还必须用javascript设置索引吗?
var email = [];
email['update'] = true;
email['e_case_id'] = $("#e_case").val();
var i = 0;
$.each($('.rowChecked'), function() {
email['e_attachments'][i] = $(this).attr('id');
i++;
});
为什么每个语句都会导致我的代码中断?我还必须用javascript设置索引吗?
var email = [];
email['update'] = true;
email['e_case_id'] = $("#e_case").val();
var i = 0;
$.each($('.rowChecked'), function() {
email['e_attachments'][i] = $(this).attr('id');
i++;
});
首先,email
应该是对象文字,而不是数组文字:
var email = {};
email['e_attachments']
其次,您在尝试使用它之前没有定义。这可能是阻止它工作的原因。尝试添加
email['e_attachments'] = [];
之前$.each
。
你可以$.map
在这种情况下使用,顺便说一句。那是:
email['e_attachments'] = $.map($('.rowChecked'), function (el) {
return $(el).attr('id');
});
而不是你的$.each
. 或者更好:
email['e_attachments'] = $('.rowChecked').map(function () {
return $(this).attr('id');
}