2014-12-04 49 views
0

我有一個JavaScript驗證,來檢查,如果輸入值爲空。現在我想添加一個驗證,一個特殊的輸入不會重複。我爲它寫了一個php函數,還寫了ajax。 Ajax工作正常,意味着當我輸入一個值時,數據庫中存在數據庫,它提示「This No already exists」。但在該函數調用後,沒有JavaScript的作品。後的Ajax功能的JavaScript不起作用

下面是代碼:

function checkValue(valdata){ 
        $.ajax({    
         type: "POST", 
         url:"success.php", 
         cache: false, 
         contentType: false, 
         processData: false, 
         data: valdata, 
         success: function (data) { 
          if(data == 1){ 
          alert ("This No already exists. ");        
          return false; 
          } 
         } 
        });   
        return true; 
       } 


       if(document.getElementById("selectErrorcat").value=="selectcategory") 
       { 
        alert ("Please select Category"); 
       } 
       else if(document.getElementById("No").value ==="") 
       { 
        alert ("Please enter MLS No field"); 
       } 

       else if(document.getElementById("mlsNo").value !==""){ 

        checkValue(formdata); 
       } 


       else if(document.getElementById("title_en").value ==="") 
       { 
        alert ("Please enter Property Title EN field"); 
       } 

checkValue(formdata);的JavaScript不起作用。問題是什麼?

+0

的''校驗值(FORMDATA)後其他if';'是不會因爲被執行的包圍'checkValue'調用'其他if'執行。 – 2014-12-04 20:43:07

+1

已經選擇了一種方括號。我比埃及人更喜歡正常的風格(在新生產線上的開頭括號),但至少要保持一致。 – developerwjk 2014-12-04 20:44:25

+0

那將是最好不要把一堆別的if's之間'空行連接到彼此。乍看之下,他們是獨立的「如果」,當它們不是時,就會產生幻覺。 – developerwjk 2014-12-04 20:45:07

回答

0

添加錯誤處理:

success: function (data) { 
    if(data == 1){ 
     alert ("This No already exists. ");        
     return false; 
    } 
}, 
error : function (jqXHR, textStatus, errorThrown) { 
    alert(errorThrown); 
}