1
我有这样的JS代码Rails 3的jQuery验证插件
$(".new_milestone").validate({
submitHandler: function(form) {
$(form).submitWithAjax();
},
errorPlacement: function(error, element) {
error.insertBefore(element);
}
});
它所有作品,errorPlacement和submitWithAjax功能。但是,当我第二次发布表单而不重新加载页面时,表单会发布两次。下次3次,依此类推。
当我这样做
$(".new_milestone").validate({
errorPlacement: function(error, element) {
error.insertBefore(element);
}
});
$(".new_milestone").submitWithAjax();
它的工作原理,但它确实阿贾克斯后即使窗体是无效的。
的submitWithAjax功能看起来像这样(感谢瑞安·贝茨)
jQuery.fn.submitWithAjax = function() {
this.submit(function() {
$.post(this.action, $(this).serialize(), null, "script");
$('.spinning').show();
$("#dialog_form").dialog("close")
return false;
})
return this;
};
上制止这一行为的任何想法?
谢谢!你有没有使用rails的经验?删除提交处理程序搞乱了轨道的POST路线。是否有任何方式使用验证功能,而不是“在提交情况下” –
@Andreas - 如果验证结束,'submitHandler'函数只会作为'
是的,我正在使用第一个。我想我可以尝试没有submitHandler函数。也许一些有效的()函数if语句? –