2

我有一个 JQM 列表,以及列表中每个实例的按钮。

当单击按钮时,我调用函数...

function xxx()
{
    alert ('click on me!! :]');
}

点击按钮没有触发功能,为什么?

看看下面的jsFiddle:http: //jsfiddle.net/Hodaya/nR369/3/

4

3 回答 3

0

要将xxx函数绑定到 DOM 元素的 click 事件,newLI您应该使用newLI.onclick=xxx;或更好地使用 jQuery 进行绑定$(newLI).click(xxx);

于 2013-01-03T08:19:36.330 回答
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(); });
}
于 2013-01-03T10:05:39.253 回答
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!! :]");
});
于 2013-01-03T13:11:34.003 回答