等待请求时的jquery对话框

时间:2011-08-15 20:52:19

标签: jquery-ui jquery-ui-dialog

我想在等待请求时显示一个对话框...请求打开一个新站点(同一个窗口)...现在我的问题是它只打开我对话框但它不会触发请求!

我使用的是Jquery ui 1.8.7。这是我的代码片段

进入HTML头:

<script>
    // increase the default animation speed to exaggerate the effect
    $.fx.speeds._default = 1000;
    $(function() {
        $( "#dialog_1" ).dialog({
            autoOpen: false,
                        modal: true,
                        draggable: false,
                        resizable: false,
                        width: 600
        });

        $( "#opener_1" ).click(function() {
            $( "#dialog_1" ).dialog( "open" );
            return false;
        });
    });
</script>

这是我的HTML代码

<div class="register_button"><button id="opener_1" type="submit">Send</button></div>
<!-- the submit button does trigger de request to!-->
<div id="dialog_1" title="register">
Please Wait!
</div>

2 个答案:

答案 0 :(得分:0)

您可以做的是将重定向添加到jquery对话框初始化本身,方法是将其添加到open事件中:

$( "#dialog_1" ).dialog({
            autoOpen: false,
                        modal: true,
                        draggable: false,
                        resizable: false,
                        width: 600,
                        open: function(event, ui) { 
                                 window.location.href = "nameofpage.html"; }
});

这样,您可以将功能保持在一起,并确保在弹出对话框时发生重定向。

答案 1 :(得分:0)

单击时返回false将取消默认操作。

如果您希望在新页面加载之前显示对话框,则无法获得该结果,除非您使用ajax提交表单。