次のコード行を使用して、いくつかのテキスト フィールドをページに動的に追加します。
var textboxCount = 0;
$('#addFields').on('click', function(){
var TextField = document.createElement("input");
TextField.setAttribute("type", "text");
TextField.setAttribute("value", textboxCount);
TextField.setAttribute("name", "textbox");
TextField.setAttribute("class", "foo");
TextField.setAttribute("id", "textbox" + textboxCount);
TextField.setAttribute('onkeyup','doSomething('+textboxCount+');'); // for FF
TextField.onkeyup = function() {doSomething(textboxCount);}; // for IE
jQuery('#TextfieldList').append(eleText);
textboxCount += 1; //Increment the count
});
ここで、この関数でフィールドの一意の ID が必要になります。
function doSomething(id){
alert(id);
}
しかし、関数を呼び出すと、追加されたすべてのフィールドで同じ ID を取得し続けます。ただし、テキストフィールドの値は正しいです。