Javascript 使用fancybox运行$.ajax,无法关闭成功窗口
我目前正在为一个网站制作一个CMS,其中一个功能是用户可以动态裁剪一个图像,他们在fancybox实例中执行此操作,所有细节都通过ajax提供给控制器,成功裁剪图像后,我希望自动关闭fancybox实例,但是我似乎无法关闭窗口,下面是我的代码Javascript 使用fancybox运行$.ajax,无法关闭成功窗口,javascript,jquery,ajax,fancybox,Javascript,Jquery,Ajax,Fancybox,我目前正在为一个网站制作一个CMS,其中一个功能是用户可以动态裁剪一个图像,他们在fancybox实例中执行此操作,所有细节都通过ajax提供给控制器,成功裁剪图像后,我希望自动关闭fancybox实例,但是我似乎无法关闭窗口,下面是我的代码 $("#crop").submit(function(e){ $.ajax({ type : "POST", dataType: "json", url : $(this).
$("#crop").submit(function(e){
$.ajax({
type : "POST",
dataType: "json",
url : $(this).attr('action'),
data : "x="+$("#x").val()+"&y="+$("#y").val()+"&x2="+$("#x2").val()+"&y2="+$("#y2").val()+"&w="+$("#w").val()+"&h="+$("#h").val()+"&isAjax=1&crop_image=Crop",
success:function(json) {
if(json.message == "Image Cropped") {
$.fn.fancybox.close();
}
}
});
e.preventDefault();
});
运行此代码可以正常工作,直到我在$.fancybox.close()
中遇到此错误
$.fn.fancybox.close不是函数
如何在ajax请求成功时关闭fancybox?我很确定它是:
$.fancybox.close();
$.fancybox.close();
$.fancybox.close()
而不是$.fn.fancybox.close()
没有错误,但仍然有一个fancybox放在我的内容上:(如果(json.message==“Image crapped”){计算为真,你能在控制台/通过警报输出json.message
的值吗?console.log(json.message)
返回裁剪后的图像,如果中的返回意味着它必须为真。请阅读常见问题解答“是否可以从iframe调用脚本?”,“否”。因为ajax请求发生在iFrame中,这是否意味着我无法从ajax回调中关闭它。啊,你在帖子中没有提到任何关于iFrame的内容。添加了$.fancybox.close();
而不是$.fn.fancybox.close()
没有错误,但仍然是一个放在我的内容上方的fancybox:(这个条件如果(json.message==“Image crapped”){
计算为true?您可以在控制台中/通过警报输出json.message
的值吗?console.log(json.message)
返回图像裁剪,如果IF
这意味着它必须为true。只需阅读常见问题解答“脚本可以从iframe调用吗?”,“否”。因为ajax请求发生在iFrame中,这是否意味着我无法通过ajax回调关闭它。啊,你在文章中没有提到任何关于iFrame的内容。