<分区>
我有一个链接会根据页面上的事件动态更改某些参数。替换值的功能似乎工作正常,我可以在 chrome 开发人员工具的“元素”窗口中看到它正在更新。但是,当我尝试从另一个 JS 函数读取该值时,它根本没有改变。
我已经为这个问题做了一个非常简单的例子:
<a href="#" id="a-delete-page" data-action="data/1/pageid/0/">
check data-action value</a>
<a href="#" id="toggle">set new value</a>
<script>
$('#a-delete-page').click(test);
$('#toggle').click(toggleValue);
function toggleValue(){
var newValue = '123';
$("#a-delete-page").attr('data-action',newValue);
alert("new value set:"+newValue);
}
function test(){
alert($(this).data('action'));
}
</script>
在这里试试:http://jsfiddle.net/2hj3e/
首先点击“检查数据操作值”,您会看到数据操作参数。然后单击设置新值(您会在开发人员工具中看到它发生变化)并再次单击“检查数据操作值”。我希望它打印 123,但它仍然打印“data/1/pageid/0/”。
任何人都可以帮助我理解这一点并指导我如何解决这个问题。