您的代码将无法工作,因为行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