如何在不重新加载页面的情况下提交表单并更新colorbox

这是一个跟进: jQuery更改colorbox的内容

现在,初始colorbox(test_2.html)的内容是一个简单的forms:例如

应该发送表单,test_3.html的内容应该加载到同一个颜色框中。

如果将其添加到主页的docReady中,它应该处理所有事情:

 $('form').live('submit', function(e){ var successHref = this.action, errorHref = "formError.php"; e.preventDefault(); $('#cboxLoadingGraphic').fadeIn(); $.ajax({ type: "POST", url: "processForm.php", data: {someData: $("#someData").val()}, success: function(response) { if(response=="ok") { console.log("response: "+response); $.colorbox({ open:true, href: successHref }); } else { $.colorbox({ open:true, href: errorHref }); } }, dataType: "html" }); return false; }); 

不过,这段代码做了一些假设。 其中之一就是将数据发送到“processForm.php”(如您所见),并且当一切正常时,期望答案为“ok”(纯文本,无json)。 如果您不关心响应或处理错误,那么您可以删除if-else块并使用您设置的页面打开colorbox。 不管怎样,你可能想要调整它,但它可以让你了解它是如何完成的。