假设我通过 PHP 在网页上生成一个记录列表,并假设每个记录旁边都有一个链接。假设当我单击链接时会弹出一个模式窗口,然后在模式中显示一个编辑表单。
我可以很容易地做到这一点,如下所示:
<a href="javascript:showEditModal(12345)">Edit</a>
但我更喜欢使用 jQuery 事件监听器:
<a class="edit" href="#">edit</a>
$('.edit').click(function(event) {
showEditModal(recordId);
});
正如您所看到的,使用事件监听器,我无法知道用户想要通过模式编辑哪个记录。
如何允许用户指定要编辑的记录,同时仍使用编辑链接的事件监听器?
最佳答案
如果使用 jQuery >= 1.4.3,您可以在链接上指定“data-id”属性(HTML5!woohoo)并使用 jQuery 的 data() 方法获取它:
<script>
$(function() {
$('a.edit').click(function() {
alert( $(this).data('id') );
});
});
</script>
<a href="#" class="edit" data-id="12345">edit</a>
关于javascript - 一种将变量(记录 ID)传递给 jQuery 事件监听器的方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4473405/