添加 ClickListener JQuery Mobile ListView
Posted
技术标签:
【中文标题】添加 ClickListener JQuery Mobile ListView【英文标题】:add ClickListener JQuery Mobile ListView 【发布时间】:2019-08-11 04:03:21 【问题描述】:我无法将 clickListener 添加到动态创建的 listView 中。我在***上试过了,但它不起作用
出了什么问题,我该如何解决?
javascript/jquery
parseContent: function()
$('#countries').append('<ul data-role="listview" id="mylistview" style="margin: 50px">');
$.each(jsonData, function(i, item)
console.log(item.stad);
$('#countries').append('<li> <img src=' + "res/flags/" + item.flag + ' id="icon">' + '<span id="listlabel">' + item.country + '</span></li>').listview().listview('refresh');
$('#countries').hide().fadeIn(800);
);
$('#countries').append('<ul>');
/*
$('#mylistview').on('click', function()
d.lg("Works"); // id of clicked li by directly accessing DOMElement property
);
*/
$('#mylistview').delegate('li', 'click', function ()
alert($(this).attr('id'));
);
html
<div data-role="page" id="one">
<div data-role="main" class="ui-content">
<div id="countries">
</div>
</div>
</div>
jquery mobile click() on listview
【问题讨论】:
【参考方案1】:.delegate(...)
根据 JQuery 文档已被弃用。
你试过了吗:$("#countries").on("click", "li", function() )
【讨论】:
【参考方案2】:总是这样:
$(document).on('pagebeforeshow', '#index', function()
$(document).on('click', '#mylistview li', function()
alert($(this).attr('id'));
);
);
这是委托事件绑定;它不关心元素是否在 DOM 中。一旦元素在所述事件中,就会被附加到它。
工作示例:http://jsfiddle.net/8Lq9fkga/
【讨论】:
【参考方案3】:试试这个...
$("#mylistview").on("click", "li", function() )
【讨论】:
虽然这段代码可能会解决问题,包括解释如何以及为什么解决问题将真正有助于提高您的帖子质量,并可能导致更多的赞成票。请记住,您正在为将来的读者回答问题,而不仅仅是现在提问的人。请编辑您的答案以添加解释,并说明适用的限制和假设。以上是关于添加 ClickListener JQuery Mobile ListView的主要内容,如果未能解决你的问题,请参考以下文章
Android、Layout clicklistener 和 subview 点击问题
Android按钮视图绑定ClickListener不起作用
按钮 ClickListener 在 LibGDX 游戏中不起作用