2013-10-17 16 views
1

我面临着从数据属性获取更新值的问题!点击数据属性获取更新值

入住这里http://jsfiddle.net/Jim_Toth/ZLJbt/show/

点击(多少钱?),并警告将让你的当前值

但是你点击后(增加一个?)将+1按钮添加到当前值

如果你点击(多少钱?)将再次得到你

之前拿到了旧值那么如何获得更新的值不老我之前已经得到了?

检查这里的代码http://jsfiddle.net/Jim_Toth/ZLJbt/

$('div').click(function() { 
    alert($(this).data('foo')); 
}); 

var div = 1; 
$('button').click(function() { 
    $('div').attr('data-foo', div); 
    div += 1; 
}); 

回答

5

jQuery的.data()后使用data-*只初始化数据值...那里,如果要修改,然后使用.data() STO设定值

你应该套.data()不是attr()

var div = 1; 
$('button').click(function() { 
    $('div').data('foo', div); 
    div += 1; 
}); 

演示:Fiddle

+0

你是真棒:) – Jim

1

演示:http://jsfiddle.net/ZLJbt/2/

$('div').click(function() { 
    alert($(this).data('foo')); 
}); 

$('button').click(function() { 
    var count = $('div').data('foo') || 0; 
    $('div').data('foo', count + 1) ; 
});