我有一个JQM列表,以及列表中每个实例的按钮。
点击按钮,我打电话给... ...
function xxx()
{
alert ('click on me!! :]');
}
点击按钮不触发功能,为什么?
请查看以下jsFiddle:http://jsfiddle.net/Hodaya/nR369/3/
答案 0 :(得分:0)
要将xxx
函数绑定到newLI
DOM元素的click事件,您应该使用newLI.onclick=xxx;
或更好地使用jQuery与$(newLI).click(xxx);
进行绑定
答案 1 :(得分:0)
最后问题得到解决:
按下按钮不起作用,因为:
列表中的每个按钮都是相同的ID,在我为每个按钮添加一个唯一名称的那一刻,它就有效了。
这里是代码:
for (var i = 0; i < Local.length; i++) {
newLI.innerHTML = '<a href="to.html" data-transition="slide" dir="rtl" onclick="YYY();" >' +
'<p>...'</p>' +
'<a id="btnClearOneBookmark' + i + '" data-role="button" data-icon="delete" data-theme="b"></a>' +
' </a>';
$("#btnClearOneBookmark" + i).click(function () { xxx(); });
}
答案 2 :(得分:0)
试试这个:
$("#mybutton").on('click',function() {
var ul = document.getElementById("bookMarkMenu");
for (var i = 0; i < 5; i++) {
var newLI = document.createElement("LI");
console.log(i)
newLI.innerHTML = '<a href="to.html" data-transition="slide" dir="rtl"><p>...</p>' +'<a id="btnClearOneBookmark" data-theme="b" data-role = "button"></a></a>';
newLI.setAttribute('data-theme', 'c');
newLI.setAttribute('onclick', 'DisplayBookMark()');
ul.appendChild(newLI);
$('ul').listview('refresh');
}
});
$("#btnClearOneBookmark").live('click',function() {
alert("click on me!! :]");
});