0

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> 

それが重要な場合は、_layout.cshtml ファイルを使用し、$.mobile.ajaxEnabled = false;デフォルトで含まれている VS2010 MVC Razor 3 モバイル テンプレートを使用しています。

4

1 に答える 1

-1

return false;onclickに追加してみてください

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

それ以外の場合、デフォルトのリンク アクションは妨げられません

于 2012-04-23T19:17:47.027 に答える