我的应用程序中有一个动态选择框。点击任何列表项我需要在弹出窗口中显示项目详细信息。但是我无法打开现在没有发生的弹出/对话框,我的代码是,
$( "#locationList" ).on( "click", "li", function( event ) {
alert("click event");
$.mobile.changePage('#myPopupDialog', 'pop', true, true);
});
我能够看到警报,但对话框没有打开。
<div data-role="dialog" id="dialog">
<div data-role="header">
<h1>List Item details</h1>
</div>
<div data-role="main" class="ui-content">
<h2>Welcome to my Popup Dialog!</h2>
</div>
<div data-role="footer">
<h1>Footer Text</h1>
</div>
</div>
列表元素应该来自Db,例如,
var optionheading = '<li value="Select Location">Select Location</li>';
for (var i = 0; i < res.rows.length; i++)
{
var opt = '<li value="';
opt += res.rows.item(i).Location;
opt += '">';
opt += res.rows.item(i).Location;
opt += '</li>';
$("#locationList").append(opt);
}
$("#locationList").listview('refresh');
HTML:
<ul data-role="listview" id="locationList" data-dismissible="false" style="height: 150px;border:1px solid #ccc;background:#f2f2f2;font:normal 11px/15px arial;padding:6px;color:#333; overflow: auto" name="locationList" data-inset="true">
</ul>
任何建议!!
答案 0 :(得分:1)
您的对话框已
id="dialog"
但是你的javascript试图弹出一个id为myPopupDialog的对话框:
$.mobile.changePage('#myPopupDialog', 'pop', true, true);
这些ID必须匹配!
如果您使用的是jQM 1.4.x,则对话框页面应使用data-dialog =&#34; true&#34;:
<div data-dialog="true" id="myPopupDialog">
这是一个有效的 DEMO