是否可以在页面刷新时停止关闭Jquery模式弹出窗口?

时间:2016-10-03 12:44:38

标签: javascript jquery asp.net-mvc-4

我正在开发一个MVC4应用程序,我在其中显示有关Modal弹出窗口的一些信息。我能够显示所需的信息。如果我在模态打开时刷新页面,则当前模态将关闭。有没有办法在页面刷新时停止关闭模态?

这是我的模态代码。

function cancel(upload_Id) {
    if (!$("#formID").validationEngine('validate')) {
        return false;
    }
    $("#id").val(upload_Id);
    $(".reject-popup-inner").parents('div').addClass('reject-popup');
    $("#dialog-form").dialog("open");
}
<div id="dialog-form" title="Reject Reason" class="reject-popup-inner">
    <div>
        <input type="hidden" value="_upload_id" id="id" /><br />
        <label for="name">Select your reason below</label>
        <select id="comments">
            <option value="0">Wrong Document</option>
            <option value="1">Incorrect Document</option>
            <option value="2">document is not clear</option>
            <option value="3">document is not valid</option>
            <option value="4">other document</option>
        </select>
        <input type="button" id="reject" class="btn btn-primary btn-cons blue" value="Ok" onclick="reject();" tabindex="-1" style="float:right;">
    </div>
</div>

jQuery模态代码

 $("#dialog").dialog({
            modal: true,
            title: "Preview of " + FileName,
            width: 850,
            closeOnEscape: false,
            height: 600,
            buttons: {
                Close: function () {
                    $(this).dialog('close');
                    deleteFile(FileName);
                }
            },
});
});

1 个答案:

答案 0 :(得分:1)

使用localStorage()设置弹出的当前状态。

function cancel(upload_Id)
{
    if (!$("#formID").validationEngine('validate')) {
         return false;
    }
    $("#id").val(upload_Id);
    $(".reject-popup-inner").parents('div').addClass('reject-popup');
    $("#dialog-form").dialog("open");
    //Set item in localStorage
    localStorage.setItem('popupFlag', 1);
}

在页面加载时,您可以检查标记

$(document).ready(function(){
   //Get and Check item in localStorage
   if(localStorage.getItem('popupFlag') == 1)
   {
      $("#dialog-form").dialog("open");     
   }
});

最后,您可以从localStorage项目

中删除该项目
//Remove item from localStorage
localStorage.removeItem('popupFlag')

仅供参考,使用localStorage您的浏览器应支持HTML5。

参考

HTML5 Local Storage