2011-05-24 56 views
0

我使用ajax和jquery進行了簡單的表單驗證。我之前做過這個,但現在它似乎一直在失敗。嘗試在清除的範圍上運行編譯並運行腳本

標題是我在螢火蟲控制檯中看到的錯誤。經過一些谷歌研究,似乎是一個管理Windows的問題,但是......我並沒有試圖做到這一點,我也嘗試在其他瀏覽器中得到相同的結果。表單提交...

這是函數:

$("#login-da").submit(function(){ 
     $('#error').hide(); 
     var username = $('#username').val(); 
     var password = $('#password').val(); 
     var query = 'username=' + username + '&pass=' + password; 
     $.ajax({ 
      type: "POST", 
      url: "functions/check-user.php", 
      async: false, 
      data: query, 
      cache: false, 
      success: function(response){ 
         if(response == 0) {       
          $('#error').slideDown(); 
          var error = 1; 
         } 
         else { 
          var error = 0; 
         } 
        } 
     }); 
     if (error == 1){   
      return false; 
     } 
    }); 

我試圖直接與相同的結果成功函數返回false。該錯誤開始顯示,但表單提交反正沒有出現。 我也注意到通過調試ajax調用之外的任何東西都沒有執行。

任何幫助將非常感激

+0

什麼是你從返回check-user.php腳本?您應該能夠看到Firebug的Net標籤中返回的內容。 – matt 2011-05-24 19:01:22

+0

0或1.我檢查過,因爲我也打電話給這個文件來檢查用戶是否存在現場更新和工作。 – 2011-05-24 20:00:38

+0

它只在Firefox中出現錯誤嗎?你可能已經讀過這個了? http://stackoverflow.com/questions/5433415/error-attempt-to-run-compile-and-go-script-on-a-cleared-scope – matt 2011-05-24 22:17:58

回答

0

嘗試在響應數據使用號碼(),另外,檢查錯誤變量的作用域的響應funcion:

success: function (response) { 
    var result = Number(response); 
    if (result == 0) { 
     $('#error').slideDown(); 
     error = 1; 
    } else { 
     error = 0; 
    } 
} 
+0

非常感謝你!它工作! – 2011-05-26 16:08:20

相關問題