我想基于Ajax结果打开对话框。如何从.js文件创建/打开对话框?
任何人帮助我。
提前致谢。
不知道这篇文章是否仍然相关,但我是这样做的:
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对话框,而不是创建一个对话框链接并触发一个click事件。
如果是这样,你应该使用$ .mobile.changePage('pageURL',{role:'dialog'});
如果您只是链接到这样的文件:
<a href="foo.html" data-rel="dialog">Open dialog</a>
无论如何,这都是用AJAX完成的 的 和退化很好 强> 适用于JS支持较少的人。
你想要的方式:
为您的内容创建一个包装div并给它一个 data-role=dialog 属性,然后调用 .dialog() 在它上面,或者 .page() 如果对话框不起作用。 更新: 使用JQMbeta2,他们引入了一个“创建”事件,您必须在事物上触发它而不是使用.page
data-role=dialog
.dialog()
.page()
.dialog() 由于某种原因不适合我。我在用:
$("<a href='#dialog-id' data-rel='dialog'></a>").click().remove();
不是很好,但有效。