我有一個HTML多部分表單,名稱,電子郵件和文件上傳。JavaScript:表單提交前Ajax調用的控制邏輯?
我想先用Ajax註冊用戶。如果註冊成功,我想然後繼續提交表格。如果失敗,我想避免提交表格。
這是我的代碼:
--- HTML ---
<form id="account-form" method="post" enctype="multipart/form-data" data-ajax="false" action="upload.php" >
<input type="text" name="username" id="username" />
<input type="email" name="email" id="email" />
<input type="file" id="mediaupload" name="mediaupload" accept="image/*" />
</form>
--- JavaScript ---
accountform.submit(function(event) {
var registration_ok = true;
// See if we can register the user
// And if we can, submit the form.
$.ajax({
type: "POST",
url: "/usercreate.php",
data: postdata,
dataType: 'json',
success: function(data) {
// fine to submit the form.
},
error: function (data){
// If this fails, we don't want to submit the form!
registration_ok = false;
}
});
return registration_ok;
});
然而,它總是返回true - 我想這是因爲主函數返回之前被稱爲Ajax的錯誤。
如何防止它在註冊失敗時返回true並提交表單?
謝謝!
啊我看到了 - 謝謝。好的解決方案:) – Richard