jqm listview上的onclick事件不起作用?
Posted
技术标签:
【中文标题】jqm listview上的onclick事件不起作用?【英文标题】:onclick event on jqm listview not working? 【发布时间】:2012-06-20 08:20:57 【问题描述】:在我的 Phonegap android 应用程序中,动态地将列表项添加到 jqm listview 中,单击项目时,获取项目索引并将其传递到另一个页面以显示基于单击项目的相关信息。它与 jqm v1 一起工作正常。 0a3 但现在我更新到 jqm v1.1.0 并且现在 onclick 事件不起作用。任何帮助?
for(var i=0;i<result.length;i++)
var li=document.createElement("li");
li.innerhtml="<a onclick='getIndexOfClickedListItem("+i+");'></a><p><b>CustName</b>"+result[i].fields.NAME+</p>";
ul.appendChild(li);
【问题讨论】:
【参考方案1】: var items=new Array();
for(i=0;i<data.resulrset.length-1;i++)
items.push("<li onclick='getvalue(\""+data.resulrset[i].city_name+"\")'><a href='#'>"+ data.resulrset[i].city_name + "</a></li>")
var liinner_html=items.join('');
$("#list").html(liinner_html);
$(list).show();
【讨论】:
【参考方案2】:你好,请看这里(因为我看不到你的完整代码)使用 JQM 列表视图的工作演示 http://jsfiddle.net/3RyXz/
这将添加新的 li 以及您可以在页面之间导航。
这应该会有所帮助,如果我遗漏了什么,请告诉我。
更新的演示
这里有索引警报http://jsfiddle.net/RTpqd/14/(我已经添加了您需要的类似功能 - getIndexOfClickedListItem
:)
行为:第一 - 点击Add Item
链接,然后点击foo1
li
你会看到正确的索引值弹出。
代码
$('.add').click( function()
$('#1, #2').append('<li><a onclick="getIndexOfClickedListItem('+count+');"> foo' + count + '</a></li>');
$(this).closest('.ui-content').find('.ui-listview').listview('refresh');
count++;
);
getIndexOfClickedListItem 函数在这里休息演示会更清楚
//adding click on new list item for index
function getIndexOfClickedListItem(str)
alert("The clicked list index is ==>" + str);
添加 li 的部分代码
$('.add').click( function()
$('#1, #2').append('<li>' + count + '</li>');
$(this).closest('.ui-content').find('.ui-listview').listview('refresh');
count++;
);
【讨论】:
感谢您的快速响应。动态添加项目工作正常,但我想获取列表视图的单击项目的索引。 @Tarak aha 看到这里:更干净,我也会更新我的帖子以及如何使用:jsfiddle.net/RTpqd/14 感谢它现在的工作。但仍然想知道为什么 onclick 不适用于 jqm 1.1.0 但适用于 1.0a。以上是关于jqm listview上的onclick事件不起作用?的主要内容,如果未能解决你的问题,请参考以下文章
是否无法为 $(document) 上的 jqueryui/jqm 小部件事件设置 on() 侦听器?