有给定的代码:
<div id="256">
<p>SOMELEMENT</p>
<button class="edit">EDIT</button>
<button class="delete">DELETE</button>
</div>
<div id="257">
<p>SOMELEMENT2</p>
<button class="edit">EDIT</button>
<button class="delete">DELETE</button>
</div>
<script>
$(".edit").click(function() { var id = $(this).parent().attr("id"); /* do some Ajax here, edit element in database with given id*/});
$(".delete").click(function() { var id = $(this).parent().attr("id"); /* do some Ajax here, delete element in database with given id*/});
</script>
有一个包含一些元素的数据库,这些元素有 ID,我想通过 Ajax 对这些元素执行一些操作。我需要元素的数据库 ID,以便我可以对这个元素执行一些 Ajax 请求。上面的解决方案有效,但是有一些缺陷 - 它依赖于 HTML 结构(例如,当我用其他元素包装按钮时, parent() 将不起作用,因为 HTML 结构发生了变化)。
如何以更好的方式在 HTML 中存储元素的数据库 ID,以便 JavaScript 可以获取它,例如用于 Ajax 请求?