哪种方法更好$ .ajax类型为POST或$ .post

时间:2014-08-28 08:16:07

标签: jquery ajax

我可以通过两种方式使用方法帖子进行ajax调用:

1)使用$ .ajax()函数

var request = $.ajax({
   url: "script.php",
   type: "POST",
   data: { id : menuId },
   dataType: "html"
   });
   request.done(function( msg ) {
   $( "#log" ).html( msg );
   });
   request.fail(function( jqXHR, textStatus ) {
   alert( "Request failed: " + textStatus );
   });

或完全

2)$ .post()方法

$.post("abc.php", {'user_id':user},
                     function(data)
                      {
                         if(data=="Success")
                             alert("Done");
                      }
         );

我想知道,我应该使用哪一个?何时使用?

2 个答案:

答案 0 :(得分:1)

如果你要发出简单的请求,请使用$ .post,如果你想提出更复杂的请求,请使用$ .ajax(请求同时处理错误和成功等)。

基于Answer from jQuery forum

答案 1 :(得分:0)

这取决于你想做什么。

  • 实际上$ .post内部使用$ .ajax,其类型设置为POST。虽然$ .ajax默认情况下将请求发出为get。如果你没有设置类型。

  • 默认情况下,$ .post还将ContentType设置为application / json,数据类型设置为json。

  • 如果您想手动设置或配置ContentType,DataType,cache,beforesend等选项,那么您可以使用$ .ajax。

你可以参考 Jquery official documentation

简而言之,如果您想发送帖子请求并以JSON格式传递数据,那么您可以使用$ .post。 $ .post设置内容类型application / json