ajax调用的区别

时间:2011-03-20 16:03:01

标签: jquery

之间有什么区别
$.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 }
    );
}

6 个答案:

答案 0 :(得分:0)

.ajax有很多功能而不是.load ... 它的支持超过resulttype(json,xml.html) 它有自己的onerror回调

其中.load仅限于html结果,并且没有自己的onerror回调。

答案 1 :(得分:0)

.ajax是jQuery的远程脚本的“低级”实现。详细信息可以在jQuery的文档中找到。

答案 2 :(得分:0)

如果您只想从远程脚本中检索HTML内容,我倾向于使用.load(),因为它更简单。您也可以直接在url参数中使用jQuery选择器来限制对特定HTML片段的插入。

请参阅http://api.jquery.com/load/

答案 3 :(得分:0)

两者实际上是一样的。第二个$.load就像$.ajax的简写。如果您想要更多地控制请求参数(例如数据类型,内容类型等),那么$.ajax是更好的选择。另一方面,如果你想加载一些内容(来自请求或服务的html),只需使用从哪里获取内容的URL调用$.load函数,它将获取它并在给定元素中呈现它。请访问jQuery documentation page了解详情。

答案 4 :(得分:0)

$。get,$。post和$ .load都使用$ .ajax向服务器发送异步调用。不同之处在于,在特定调用($ .get,$。post,$ .load)中,$ .ajax的某些参数是固定的,因此您无法使用$ .get或使用$ .post获取请求来发送请求。类似地,当使用$ .load时,你不能指定json或xml的返回类型。使用特定方法时,对成功和错误回调的控制也可能受到限制。然而,使用$ .ajax你可以完全控制你发送的内容和你打算接收的内容以及你想如何使用回调来操纵结果或错误。

答案 5 :(得分:0)

两者几乎都是一回事。 .load()$.ajax的简写用法。它既不快也不慢,因为它基本上是$.ajax

$.load()的优点是,如果要运行脚本或将返回的数据附加到元素,则使用起来会更简单直接。虽然$.ajax()允许您更多地控制Ajax调用(例如xhr,contentType等)。您可以看到许多有用的选项列表here