2017-07-06 28 views
-1

我被困在我的具體問題。 如果數據來自使用ajax,我想返回false。 這裏是我的代碼:阿賈克斯打電話不通電話

<script> 
    function verifydom(form) 
     { 
      var domnam = form.domname.value;    
      if (domnam == "") 
      { 
       alert("Please enter the Domain Name"); 
        form.domname.focus(); 
        return false; 
      }    
      else if(domnam.indexOf('.gov.in') <= 0){ 
       alert("Please enter valid domain name"); 
        form.domname.focus(); 
        return false; 
      } 
      else{     
       $.ajax({ 
        type: "get", 
        url: "calling.php", 
        data: "domnam="+domnam, 
        success: function(msg){ 
         if(msg!== ""){ 
          alert(msg); 
         } 
        } 
       }); 
       return false; 
      } 
      return true; 
     } 
    </script> 
    <form name="frmDelegate" action="dlgdetail.php" method="POST" 
    onsubmit="return verifydom(document.frmDelegate);" autocomplete="off"> 
    input type="text" name="domname" id= "domname" 
    onkeyup="showResult(this.value);"/>   <input type="hidden" 
    id="chkmsg" value=""/> 
    <input type="submit" value="Go" name="submit" /> 
    </form> 

「其他條件」下的AJAX調用會返回一些錯誤信息,所以如果一個錯誤出現,我想不提交表單。 好的,問題是'每次Ajax是否發送消息,Else都會工作。 我該如何克服這種情況?

+0

謝謝拉維。 :) –

回答

0

較空白郵件,而我更願意從calling.php文件返回JSON消息。

$arr = array("status" => "error", "message" => "error found"); 
echo json_encode($arr); 

通過這樣做,您很容易就可以檢查錯誤是否存在。如果JSON有任何消息,那麼你應該檢查下面的代碼。

$.ajax({ 
    type: "get", 
    url: "calling.php", 
    data: "domnam="+domnam, 
    success: function(msg){ 
    var data = jQuery.parseJSON(msg); 
     if(data.status == "error"){ // no need to check strictly 
      return false; 
     } 
    } 
}); 
+0

同樣的問題,返回不會在ajax調用內部工作。 :( –

+0

在請求中加入'async:false'並重試 –