我有一个表单,一旦有人单击“提交”,就会触发并e.preventDefault();
使用 Ajax,以便表单实际上不会提交。
我的问题:我确实希望将表单提交到服务器,但只有在 Ajax 成功返回之后。
因此,作为一个例子,我试图实现以下场景:
- 用户点击“提交”
- Ajax 被触发发送一些信息,并且用户仍然在页面上。
- Ajax 又回来了,我们现在可以启动它的
success:
功能了。 - 触发成功函数
form data
并将站点上的 提交到服务器。
的HTML:
<form name="demoFiler" action="save/uploadCreate.php" method="POST" enctype="multipart/form-data">
//Some inputs, checkboxes radios etc.
<input type="submit" name="submitHandler" id="submitHandler" value="Upload" class="buttonUpload hideButton" />
</form>
Javascript:
document.getElementById(this.config.form).addEventListener("submit", submitMe, false);
function submitMe(e){
e.stopPropagation(); e.preventDefault();
//Necessary vars for the 'data' defined here
$.ajax({
type:"POST",
url:this.config.uploadUrl,
data:data,
cache: false,
contentType: false,
processData: false,
success:function(rponse){
//This is where we need our Success function to SUBMIT the form using uploadCreate.php
}
});
}