我的代码的结构方式,fancybox在短暂显示错误消息后自动关闭。我希望它保持开放,以便用户可以修复他/她的错误。我做错了什么?
$(document).ready(function(){
$("#message_form").on("submit", function(){
if ($("#guest_name").val().length < 1 || $("#guest_message").val().length < 1) {
$("#guest_error").show();
$.fancybox.resize();
return false;
}
$.fancybox.showActivity();
$.ajax({
type: "POST",
cache: false,
url: "/guestbook/",
data: $(this).serializeArray(),
success: function(data){
$.fancybox(data);
},
});
return false;
});
})
答案 0 :(得分:0)
您有一个用于缓存ajax错误的错误回调。
(文档)$。就绪(函数(){ $(“#message_form”)。on(“submit”,function(){
if ($("#guest_name").val().length < 1 || $("#guest_message").val().length < 1) {
$("#guest_error").show();
$.fancybox.resize();
return false;
}
$.fancybox.showActivity();
$.ajax({
type: "POST",
cache: false,
url: "/guestbook/",
data: $(this).serializeArray(),
success: function(data){
$.fancybox(data);
},
error: function(e){
var error_data = e;
$.fancybox(error_data);
}
});
return false;
});
})
答案 1 :(得分:0)
我删除了$.fancybox.resize();
行并且它有效。耶。