您的代碼將無法工作,因爲行return trueFalse;
在成功函數運行之前執行,因爲它被稱爲異步(如Ajax中的A)HTTP請求的結果。你會需要一個回調函數傳遞給這個代碼,並調用,在成功的功能:
function getWithCallback(val, callback) {
var scope = this;
$.ajax({
type: "GET",
url: "url",
data: "text=" + val,
success: function(msg) {
callback.call(scope, msg.match(/OK/) || false);
}
});
}
getWithCallback($("#text").val(), function(result) {
if (result) {
// Do something
}
});
你可以試試這個驗證一個表單提交:
var validating = false;
var valid = false;
$('#myform').submit(function(event) {
if (validating) {
return false;
}
if (valid) {
return true;
}
var form = this;
validating = true;
getWithCallback($('#text').val(), function(result) {
if (result) {
valid = true;
form.submit();
}
validating = false;
});
return false;
});
您還可能希望看看jQuery Validation plugin
你需要什麼trueFalse for?很高興知道,因爲你可能以錯誤的方式做到這一點。 – kjagiello 2010-01-20 14:28:49
onSubmit =「return validate()」 if(true False == true) then submit else exists exists in same page。 – 2010-01-20 14:37:24