繁体   English   中英

如何获取存在于data-attr中的现有JSON并更新它

[英]How to fetch existing JSON that exists in data-attr and update that

在给定的小提琴中,单击Addons按钮,然后选择和取消选中Checkboxes,我试图更新以data-stuff形式存在的data-attr数组。

设置数据后,如何获取现有数据并用新数据进行更新。 http://jsfiddle.net/kgm9o693/9/

// checkbox checked
$(document).on('click', '.ui-checkbox-off', function (event) {
    var vendoritemsdata = $(".lastItm_Wrap").data('stuff');
    var checkboxid = $(this).next().attr("id");
    var cost = $(this).attr("cost");
    var toppcrusts = [];
    toppcrusts.push({
        'name': checkboxid,
            'cost': cost
    });
    if (vendoritemsdata.length == 0) {
        $('.lastItm_Wrap').attr('data-stuff', toppcrusts);
    } 
    else {
        var existingdata = $('.lastItm_Wrap').data('data-stuff');
    }
});

您能告诉我如何解决这个问题吗?

您正在尝试将DOM用作变量。 情况应该相反。 仅使用DOM来显示结果(您的情况下的总费用)。 但是在此之前,如果您需要将其作为json或数据填充,则将所有内容放入数组中进行序列化。

检查此http://api.jquery.com/serializeArray/底部的示例

如果您想继续按照自己的方式进行操作,请将数据转换为JSON并使用以下方法:

设定资料

$('.lastItm_Wrap').attr('data-stuff', JSON.stringify(toppcrusts) );

获取数据

var existingdata = JSON.parse( $('.lastItm_Wrap').attr('data-stuff') );

http://jsfiddle.net/kgm9o693/12/

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM