<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  没有执行表单 还是提交了。 。。

解决方案 »

  1.   

    function check(){
    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;
    }
    这样试试
      

  2.   

    你return的值是在:success: function(data){
    中的,没有到外层的函数。
    你可以定义一个变量,反正你是同步的。
    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;
    }
      

  3.   

    success: function(data){
      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;}
      

  4.   


    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