2011-12-12 79 views
0

下面的代碼:AJAX在jQuery的1.3.2反覆工作只適用首次在1.7.1

$(document).ready(function() { 
     $().ajaxStart(function(){ 
      alert("in ajaxStart") 
      //tried removing $.blockUI(below, same thing. don't see alert 
      //$.blockUI({ message: '<h1><img src="images/ajax-loader.gif" /> Running query...</h1>' }); 
     }); 
     $().ajaxStop(function(){ 
      $.unblockUI() 
     }); 
    ... 
     $("#frmQUERYSUBMIT").submit(function(e) { 
    ... 
      $.ajax({ 
       type: "POST", 
       url: '/execquery/' + jsonQuery, 
       //datatype: JSON, //original, incorrect 
       datatype: "json", //still get same problem with correct usage 
       success: function(data, textStatus) { 
          $("#status p").html(data); 
         }, 
       async: true 
      });   
    ... 
     }); 
    }); 

在1.3.2,這個工作得很好,達到了服務器,給我回的數據我預期。當我升級到1.7.1時,它會工作一次(每次打開瀏覽器),但所有後續執行都不會執行任何操作。如果我通過螢火蟲中的代碼,它會顯示它每次都會一行一行地執行,但實際上只是第一次執行某些操作。此外,在1.7.1中,$().ajaxStart(也僅在第一次運行,而不是任何後續時間。

TIA

編輯:我原本張貼我的服務器日誌顯示對後續嘗試沒有關係。這是一個錯誤。日誌顯示連接已完成,並給出響應。它只是不顯示在瀏覽器中。

編輯:FWIW,在1.3.2中,數據返回爲"{"queries":{"f.sp":{"1d":{"show_results":{"19820611":-2.6893769610040343,...";但在1.7.1,它回來的文件,並表示該類型是application/xml

+2

'數據類型:JSON':你在哪裏定義'JSON'變量? 'datatype'不是一個有效的選項。 –

+0

FireBug中的任何錯誤? – Narek

+0

'數據類型:JSON'應該改爲'dataType:「json」'。 'async = true'不是必需的,因爲'true'是'async'的默認值。 – jabclab

回答

1

JSON是不是一個有效的數據類型,嘗試給datatype: 'json'

+0

謝謝,是的,我確實嘗試過(並編輯了我的原始文章),但沒有什麼區別。 – davej