我在jQuery对话框中显示了一个包含大量验证的大表单,但我现在想知道是否有任何获取它以便一旦我提交实际表单,它将通过Ajax加载并保留在模态窗口我打开了吗?不确定是否还有这样做。
谢谢!
答案 0 :(得分:3)
是的,你必须用hyjack提交按钮执行ajax GET传递所有表单字段,然后返回false;
答案 1 :(得分:2)
你必须查看ajaxifying
表格的pattern
精彩内容。它的美妙之处在于,如果您在输入的REQUEST
属性中放置了验证(我更喜欢这样做而不是为每个输入字段编写javascript片段),则只有在每个验证通过时才会提交表单。简而言之,您提交事件的默认行为将发生变化,您将拥有ajax
的完全副本,但此时它位于{{1}}。
答案 2 :(得分:1)
$('.mySubmitButton').bind('click', function(e) {
//do something else
return false; //stops form from submitting the normal way.
});
或
$('form#IDofForm').submit(function() {
//do something upon submit
});
或两者的组合如果你愿意
答案 3 :(得分:1)
这是一个失败的简单方法,只需在提交成功后替换表单元素本身。我正在使用on()方法,因此代码可以在表单加载到ajax
之前在页面加载上运行$(document).on('submit', '#formID',function() {
var $form = $(this);
var dataToServer = $form.serialize();
$.post(urlString, dataToServer, function(dataFromServer) {
/* run ajax sucess code here */
$form.replaceWith(dataFromServer);
});
return false; /* avoid browser submitting form*/
});
编辑:你如何整合这将取决于你的验证方法