关闭上一个弹出窗口后,jQuery Mobile弹出窗口无法打开

Cha*_* L. 2 javascript jquery jquery-mobile

我有一个jQuery弹出窗口,它接收可能导致错误的用户输入.如果有错误,我想要第二个弹出窗口,但是我无法使用它.

这是一个简单的例子,我也有jsfiddle:http://jsfiddle.net/tz4ju/2/

HTML:

<div data-role="page" id="home">
    <div data-role="popup" id="errorDialog" class='ui-corner-none ui-content'>
        <p id="errormsg"></p>
    </div>

    <div data-role="popup" id="addFolderDialog" class='ui-corner-none portalpopup'>
        <div data-role='content'>
            <p></p>
            <div data-role="fieldcontain">
                <label for="name">New Folder:</label>
                <input type="text" name="name" id="newfolder_val" value="" class="ret_submit" rel="adddir_submit" />
            </div>
            <div class="clearfix">
                <a data-role="button" data-inline="true" data-theme="b" id="adddir_submit" onclick='create_folder_submit()'>Add Folder</a>
                <a data-role="button" data-inline="true" data-rel='back'>Cancel</a>
            </div>
        </div>
    </div>

    <p><a href="#addFolderDialog" data-rel="popup">Open Popup</a></p>
</div>
Run Code Online (Sandbox Code Playgroud)

JavaScript:

window.create_folder_submit = function () {
    $("#addFolderDialog").popup("close");
    $("#errormsg").text("ERROR!");
    $("#errorDialog").popup("open");
}
Run Code Online (Sandbox Code Playgroud)

顺便说一下,如果我$("#errorDialog").popup("open")在其他任何地方打电话,那就行了.我究竟做错了什么?

Ara*_*vin 5

根据此文档(请参阅页面末尾) jquery mobile中不允许使用链接弹出窗口.

你可以像下面那样实现链接弹出窗口.

$( document ).on( "pageinit", function() {
$( '.popupParent' ).on({
    popupafterclose: function() {
        setTimeout( function(){ $( '.popupChild' ).popup( 'open' ) }, 100 );
    }
});
});
Run Code Online (Sandbox Code Playgroud)

请参阅此 Fiddle Demo