<form action="__URL__/insert" method="post" name="myform" id="myform" onsubmit="return check();" >
function check(){
$.ajax({ type: "get",
async:false,
url: "__URL__/getverify/id/"+$.trim($("#imgverify").val()), success: function(data){
if(data=="1")
{
alert("验证码错误");
return false;
}else
{
return true;
}
} });}
用的是 同步 提交 alert("验证码错误"); 已经弹出来了。 但return false 没有执行表单 还是提交了。 。。
var _true = false;
$.ajax({ type: "get",
async:false,
url: "__URL__/getverify/id/"+$.trim($("#imgverify").val()), success: function(data){
if(data=="1")
{
alert("验证码错误");
}else
{
_true = true;
}
} });
return _true;
}
这样试试
中的,没有到外层的函数。
你可以定义一个变量,反正你是同步的。
function check(){
var res = false;
$.ajax({type: "get",
async:false,
url: "__URL__/getverify/id/"+$.trim($("#imgverify").val()),success: function(data){
if(data=="1")
{
alert("验证码错误");
res = false;
}else
{
res = true;
}
}});
return res;
}
if(data=="1")
{
alert("验证码错误");
return false;
}else
{
return true;
}
}
这里reture false和整合return false是不一样的。function check(){
var isTrue=false;
$.ajax({type: "get",
async:false,
url: "__URL__/getverify/id/"+$.trim($("#imgverify").val()),success: function(data){
if(data=="1")
{
alert("验证码错误");
isTrue=false;
}else
{
isTrue=true;
}
}});
return isTrue;}
function check(){
return $.ajax({type: "get",
async:false,
url: "__URL__/getverify/id/"+$.trim($("#imgverify").val()),success: function(data){
if(data=="1")
{
alert("验证码错误");
return false;
}else
{
return true;
}
}});}
这样才会返回true或 false