我想根据 Ajax 结果打开对话框。如何从 .js 文件创建/打开对话框?
任何人都可以帮助我。
提前致谢。
如果您只是链接到这样的文件:
<a href="foo.html" data-rel="dialog">Open dialog</a>
无论如何,它都是用 AJAX 完成的,并且对于那些对 JS 支持较少的人来说降级得很好。
你想这样做的方式:
为您的内容创建一个包装 div 并给它一个data-role=dialog
属性,然后调用.dialog()
它,或者.page()
如果对话框不起作用。更新:使用 JQMbeta2,他们引入了一个“创建”事件,您必须在东西上触发它而不是使用 .page
不知道这篇文章是否仍然相关,但我是这样做的:
function openDialog(strPageId, strTransition){
$.mobile.changePage($("#"+strPageId+":jqmData(role='dialog')"), {transition : ""+strTransition+""});
}
然后你可以在一个按钮上调用它,或者在你的代码中,任何地方......
<button data-theme="a" name="btnOS" id="btnOS" onClick="openDialog('pu-edit-mailorder','slideup')">Order</button>
我认为他的意思是他想使用 JS 打开一个 jQM 对话框,而不是创建一个对话框链接并触发一个点击事件。
如果是这样,您应该使用 $.mobile.changePage('pageURL', {role: 'dialog'});
.dialog()
由于某种原因对我不起作用。我在用:
$("<a href='#dialog-id' data-rel='dialog'></a>").click().remove();
不是很好,但有效。