在提交按钮上单击,我正在调用API。如果它返回true,我想显示错误消息并停止提交表单。 但如果它返回false,我想提交表单。
jquery代码:
$(document).ready(function () {
$('#submit').click(function () {
if ($('#EMail').val().length != 0) {
var email = $('#EMail').val();
var url = "url";
$.ajax({
type: "GET",
url: url,
dataType: "xml",
success: function (responsedata) {
var result = $(responsedata).find("Exists").text();
console.log(result);
if (result == 'false') {
$('#frmsignup').submit();
} else {
//show error.
return false;
}
},
complete: function () {
},
error: function () {
}
});
} else {
$('#frmsignup').submit();
}
});
});
但问题是上面的代码甚至if (result == 'true')
,表单被提交并且错误没有显示出来。
我究竟做错了什么?
答案 0 :(得分:1)
首先,你必须点击提交按钮
停止提交事件$('#submit').click(function (e) {
e.preventDefault();
你可以随时调用.submit()形式
答案 1 :(得分:0)
我认为,问题是你检查结果是否=='false',在这种情况下'false'是一个字符串,但不是bool。
if (!result) {
$('#frmsignup').submit();
} else {
//show error
return false;
}