わかりました、次のように非表示の入力フィールドを動的に作成しています:
$("<input type='hidden' id=pid'"+postid+"-title name='posts["+postid+"][title]' value='' />" +
"<input type='hidden' id=pid'"+postid+"-body name='posts["+postid+"][body]' value='' />" +
"<input type='hidden' id=pid'"+postid+"' class='category' name='posts["+postid+"][category]' value='' />" +
"<input type='hidden' id=pid'"+postid+"' class='author' name='posts["+postid+"][author]' value='' />"
).appendTo("#datatable");
デバッグを容易にするために、タイトル入力の id を変更して、そのクラス (タイトル) を含めました。だから、コードでアクセスできるはずのようです$('#pid'+id+'-title')
。しかし、そうではありません。むしろ、使用した結果$("#pid"+id+"-title")toSource()
は です({context:({}), selector:"#pid0-title"})
。ちなみに、0 が正しい ID です。
JQuery と動的要素について明らかな何かが欠けているに違いないと感じています。オブジェクトが見つからないように見える理由は何ですか?