html
の代わりに使用しtext
ます。
$('<li></li>', {
html: $('<a></a>', {
text: data[i].name,
onclick: 'doSomething()'
}),
id: 'response'
}).appendTo('ol.responseList');
PSonclick
イベントをバインドするために属性を使用しないことをお勧めします。jQuery のイベント API を使用します。
$('<li></li>', {
html: $('<a></a>', {
text: data[i].name
}).click(doSomething),
id: 'response'
}).appendTo('ol.responseList');
i
更新:に渡したい場合doSomething
は、(ループの外側で) 次のようにする必要があります。
function createFunc(i){
return function(){
doSomething(i); // this will be the correct value of `i`
};
}
そして、これを行います:
$('<li></li>', {
html: $('<a></a>', {
text: data[i].name
}).click(createFunc(i)), // Yes, this should be `createFunc(i)`, it returns a function
id: 'response'
}).appendTo('ol.responseList');