JQuery Mobile:关闭对话框重新加载调用页面

时间:2012-04-23 18:59:57

标签: asp.net-mvc-3 jquery-mobile

我有一个Jquery Mobile应用程序,其中的页面需要显示MessageBox对话框的等效项,以向用户显示消息。我得到对话框显示正常,但当对话框关闭时,调用它的页面重新加载。我只是希望对话框消失而不对调用它的主页做任何事情。这是一个问题,因为此主页面可能已经由用户选择了选项,并且此刷新会清除选项。

这是我显示对话框的测试代码:

<a href="/Dialogs/ListError.htm" data-role="button" data-inline="true" data-rel="dialog" data-transition="pop">Open dialog</a>

对话框的html位于单独的页面中:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<html> 
    <head> 
       <title>Page Title</title> 
    </head> 
    <body> 
        <div data-role="page"> 
                <div data-role="header"> 
                    <h1>Search</h1> 
                </div> 
                <div data-role="content"> 
                    <p>You must select a Location.</p> 
                    <p><a id="close" onclick="$('.ui-dialog').dialog('close');" data-rel="dialog" data-role="button">OK</a></p> 
                </div> 
        </div> 
    </body> 
</html> 

如果它很重要,我正在使用VS2010 MVC Razor 3移动模板,该模板使用_layout.cshtml文件,默认情况下在其中$.mobile.ajaxEnabled = false;

1 个答案:

答案 0 :(得分:-1)

尝试将return false;添加到您的onclick

<a id="close" onclick="$('.ui-dialog').dialog('close'); return false;" data-rel="dialog" data-role="button">OK</a>

否则将无法阻止默认链接操作