与えられたコードがあります:
<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を介してこれらの要素に対していくつかのアクションを実行したいと思います。この要素に対していくつかのAjaxリクエストを実行できるように、要素のデータベースIDが必要です。上記の解決策は機能しますが、いくつかの欠陥があります-それはHTML構造に依存しています(たとえば、ボタンを他の要素でラップすると、HTML構造が変更されたため、parent()は機能しません)。
要素のデータベースIDをHTMLに保存して、JavaScriptがAjaxリクエストなどで取得できるようにするにはどうすればよいですか?