jQuery post对话框关闭

jQuery post对话框关闭

问题描述:

我有一个对话框有两个按钮:“是”和“否”。 为“是”,我会做一些数据库操作通过jQuery post对话框关闭

$.ajax({ 
    type: post 
    ... 
}) 
下的成功部分

,我需要用一个新的页面,它工作正常重定向我的HTML标记的一部分。之后,我希望关闭对话框,这是行不通的。

我使用cmd是

$(this).dialog("close"); 

我也试过:

$(this).closest('.ui-dialog-content').dialog('close'); 

$(this).parents(".ui-dialog-content").dialog('close'); 

我的成功部分内上述作品都不是。我认为这可能是由于重定向。尚未确定。

有没有人有一些想法? 谢谢!

+1

你能包含更多的代码吗?处理点击“是”的整个函数将会是太棒了 - 在你的AJAX调用的'success'回调处理程序中'this'不是你认为它/需要它的东西。 – 2013-02-28 16:47:32

+0

我已经通过cernunnos的想法解决了这个问题。谢谢兄弟 – 2013-02-28 17:03:54

我假设你在成功函数中使用$(this),如果这是真的,那么你的问题是“this”不再指向你的对话框。

保存参考对话框DIV打电话之前的AJAX功能,然后用成功函数内部的参考

// before ajax 
var that = this 

// inside success 
$(that).dialog('close'); 
+0

谢谢兄弟,它的工作原理。感谢您的解释。 – 2013-02-28 17:03:06

只要给一个ID到您的对话框,并在阿贾克斯成功回调的说:

$("#yourDialogId").dialog("close"); 
+0

谢谢兄弟。其实,你的解决方案工作,更容易。然而,cernunnos给出了我的方式不起作用的根本原因。 – 2013-02-28 17:02:32