我想将相同的对象类型保存在Array()
例如,当我想选择所有复选框并将值保存在数组中时:
selectAllCbs: function() {
var self = this;
$('#' + instanceName + 'table_form input[type=checkbox]').each(function(index,cb) {
if($(cb).prop('disabled') == false) {
$(cb).prop('checked',true);
console.log("Select all clicked:" + cb); //gives me [object HTMLInputElement] result
selected.push(cb); //save to an array
self.changeRowStyle(cb);
}
});
当我在用户单击行时使用几乎相同的代码时,我得到了不同的类型:
rowClicked: function(id) {
var cb = $('#' + instanceName + 'cb_' + id);
if($(cb).is(':checked')) {
$(cb).prop('checked',false);
selected.splice(selected.indexOf(this.value),1);
} else {
$(cb).prop('checked',true);
console.log("Row clicked:" + cb); //gives me [object Object]
selected.push(cb);
}
this.changeRowStyle(cb);
},
所以主要的问题是如何保存[object HTMLInputElement]
类型中的rowClicked元素?
因为在第一个示例中,我可以selected[i].value
使用第二个示例读取值,我需要使用selected[i][0].value
.