在jQuery对话框中完成效果后回发

时间:2011-04-16 07:19:59

标签: jquery jquery-ui jquery-ui-dialog

我有一个jQuery对话框。现在它的作用实际上是在我的购物车中添加一个新项目,它会在点击创建按钮时产生抽吸效果并从对话框中抽出。现在我想要的是在特定效果完成后在asp.net中回发页面

简而言之,我想要的是......在效果完成之前,应该没有回复。一旦粉扑的效果完成,页面应立即回发。我怎样才能做到这一点?

对话框的代码是

$.fx.speeds._default = 1000;

$('[id*="dialog"]').dialog({
    autoOpen: false,
    modal: true,
    resizable: false,
    show: "blind",
    hide: "puff",
    buttons: {
        'Create': function() {
            Materials.material_id = $('[id*="txtMaterialName"]').val();
            Materials.quantity_type = $('[id*="txtQuantity"]').val();
            AddNewItem(Materials);
            $(this).dialog('close');
        },
        'Cancel': function() {
            $(this).dialog('close');
        }
    }
});

因此,关闭对话框后关闭动画的动画结束后,页面应该回发。

注意:在效果结束之前,页面不应该回发。

1 个答案:

答案 0 :(得分:0)

您应该可以使用close回调来执行您需要的操作:

$('[id*="dialog"]').dialog({
    // existing stuff...
    close: function() {
        // Trigger your postback here, this will be called
        // after the dialog has been closed.
    }
});

这是一个精简的示例:http://jsfiddle.net/ambiguous/Seuek/

上面没有CSS,所以对话框看起来很难看,但足以证明效果。