2011-03-20 164 views
0

是什麼差異呼籲

$.ajax({ 
       type: "POST", 
       url: "/LiveGame/Partial3?gameDate=" + dateText, 
       dataType: "html", 
       success: function(result) { 
        var domElement = $(result); 
        $("#dvGames").html(domElement); 
       } 
      }); 

onSelect: function(dateText, inst) { 
    $('#dvGames').load(
     '<%= Url.Action("Partial3", "LiveGame") %>', 
     { gameDate: dateText } 
    ); 
} 
+0

你從這些電話獲得不同的結果還是隻是好奇? – 2011-03-20 16:07:56

+0

我只是好奇 – DotnetSparrow 2011-03-20 16:13:36

回答

0

阿賈克斯之間的差異有很多功能比.load ... 的支持比與resultType以上(JSON,xml.html ) 它有自己的錯誤回調

其中.load僅限於html結果,並且沒有自己的錯誤回調。

0

.ajax是jQuery遠程腳本的「低級」實現。詳細信息可以在jQuery的文檔中找到。

0

如果您只想從遠程腳本檢索HTML內容,我傾向於使用​​,因爲它更簡單。您也可以直接在url參數中使用jQuery選擇器來限制插入特定的HTML片段。

http://api.jquery.com/load/

0

兩者實際上是一樣的。第二個$.load就像是$.ajax的簡寫。如果您想要更多地控制請求參數(如數據類型,contenttype等),那麼$.ajax是更好的選擇。另一方面,如果你想加載一些內容(來自請求或服務的html),只需調用$.load函數,就可以從URL中獲取東西,並將它獲取並呈現給定元素。請訪問jQuery documentation page瞭解更多信息。

0

$ .get,$ .post和$ .load,全部使用$ .ajax向服務器發送異步調用。不同的是,在特定的調用($ .get,$ .post,$ .load)中,$ .ajax的某些參數是固定的,因此您不能使用$ .get發送發佈請求,或者使用$ .post發送請求。同樣,當使用$ .load時,你不能指定json或xml的返回類型。使用特定方法時,對成功和錯誤回調的控制也可能受到限制。而使用$ .ajax,您可以完全控制您發送的內容以及您打算接收的內容以及如何使用回調操作結果或錯誤。

0

兩者幾乎都是相同的東西。​​是$.ajax的簡寫使用。由於它基本上是$.ajax,因此速度也不會更快或更慢。

$.load()的優勢在於,如果要運行腳本或將返回的數據附加到元素,它的使用更簡單直接。儘管$.ajax()允許您更多地控制Ajax調用(例如xhr,contentType等)。你可以看到許多有用的選項清單here