我正在尝试更新数据阵列中的一个选项:
<a class="status" data-set='{"field": "status", "id": 2, "result": "3"}'>Click</a>
我需要结果从3更新为4个。
这是我的代码:
$('body').on('click', 'a.status', function() {
var data = $(this).data("set");
value = data.result == 3 ? 4 : 3;
$(this).data("set", {"val":value});
console.log(data)
});
点击后,用[object,object]
替换整个数据集属性任何帮助都将不胜感激。
答案 0 :(得分:0)
它可能会以字符串形式提供数据:
$('body').on('click', 'a.status', function() {
var $this = $(this);
var data = $this.data("set");
data.result = data.result == 3 ? 4 : 3;
$this.data("set", JSON.stringify(data));
console.log(data)
});
答案 1 :(得分:0)
您应该能够直接操作数据属性中的对象,如下所示:
IN
<强>样本强>
$(this).data('set').result = 4;
//or $(this).data()['set']['result'] = 4;
//or $(this).data().set.result = 4;
&#13;
$('a.status').on('click', function() {
$(this).data('set').result = $(this).data('set').result == 3 ? 4 : 3;
console.log( $(this).data('set') );
});
&#13;