当我点击Addons按钮并选中/取消选中项目(Checkboxes)时,我正在更新数据数组
但即使在设置数据后,当我检查元素时,我看到数据-stuff数组仍然是空的
<div class="lastItm_Wrap" data-stuff="[]">
</div>
您能否告诉我如何设置数据/更新数据填充数组
答案 0 :(得分:3)
您需要设置属性值,而不是设置其数据属性。
更改
$('.lastItm_Wrap').data('stuff', vendoritemsdata);
到
$('.lastItm_Wrap').attr('data-stuff', vendoritemsdata);
答案 1 :(得分:1)
您正在使用jQuery data-api,它具有内部存储空间来存储数据值,这就是未更新属性值的原因。
您的值已在内部存储中正确设置,因此应该没问题。
// checkbox checked
$(document).on('click', '.ui-checkbox-off', function (event) {
var vendoritemsdata = $(".lastItm_Wrap").data('stuff');
var checkboxid = $(this).next().attr("id");
vendoritemsdata.push(checkboxid);
$('.lastItm_Wrap').data('stuff', vendoritemsdata);
console.log('off',vendoritemsdata)
});
// checkbox Unchecked
$(document).on('click', '.ui-checkbox-on', function (event) {
var vendoritemsdata = $(".lastItm_Wrap").data('stuff');
var itemtoRemove = $(this).next().attr("id");
vendoritemsdata.splice($.inArray(itemtoRemove, vendoritemsdata), 1);
console.log('on',vendoritemsdata)
$('.lastItm_Wrap').data('stuff', vendoritemsdata);
});
演示:Fiddle
查看控制台中的记录值,您可以看到它正常工作