jqueryでこれを行う最良の方法を見つけようとしています。私は ajax 呼び出しを介していくつかのデータを取得し、それをページに詰め込んでいます。簡単なメモを取るアプリケーションを扱っています。各メモには独自のデータ セットがあります。現在取り組んでいるコードを含めました。DOM に詰め込まれたメモには、保存、削除、元に戻すなど、さまざまなことを行う複数のメソッド (リンクとして) があります。それらがクリックされたら、別の ajax 呼び出しを行い、POST を実行したいと思います。しかし、どの付箋から保存または削除が行われたかをどのように判断すればよいでしょうか?
クリック イベントを処理するにはどうすればよいですか? すべての動的要素の ID に対してセレクターを作成する必要がありますか? それは理想的とは言えませんし、その方法もわかりません。匿名関数を作成し、ID を解析する 1 つのイベント ハンドラーを使用できますか。ID には一意の識別子と、save、delete などのディレクティブが含まれます。これら 2 つのどちらも最適なオプションとは思えません。スタックオーバーフローは何を推奨していますか?
<html xmlns='http://www.w3.org/1999/xhtml'>
<head>
<meta http-equiv='Content-Type' content='text/html; charset=utf-8'/>
<link rel="stylesheet" type="text/css" href="layout.css" />
<script type="text/javascript" src="jquery-1.7.1.min.js"></script>
<script type="text/javascript">
$.ajax({
url: 'noteGet.php',
data: "",
dataType: 'json',
success: function(rows)
{
for (var i in rows) {
var noteId = rows[i][0];
var noteContent = rows[i][2];
$('#allNotes')
.append('<span id="stickyNote'+noteId+'" class="stickyNote"><textarea id="stickyNoteTextArea'+noteId+'" class="stickyNoteTextArea">'+noteContent+'</textarea><a href="#" id="stickyNoteSave'+noteId+'">save</a> <a href="#" id="stickyNoteDelete'+noteId+'">delete</a></span>')
}
}
});
$('#allNotes').on('click', 'a', function() {
//what to do
});
});
</script>
</head>
<body>
<span id="links"></span>
</body>
</html>