我可以使用jQuery简化这个ajax调用吗?

时间:2011-11-05 15:18:26

标签: jquery

我有以下内容:

$.ajax({
    type: "POST",
    traditional: true,
    url: "/Administration/Locations/DoAction",
    data: { partitionKey: id.substring(14),
            rowKey: id.substring(4, 14),
            action: ac,
            datastore: $("#DataSource").val()
    },
    async: false,
    dataType: "json",
    timeout: 1000,
    success: function (data) {
      xx
    },
    error: function (x, t, m) {
      xx
    }

我可以使用jQuery来简化这个帖子吗?请注意,id和ac是之前分配的javascript变量。

2 个答案:

答案 0 :(得分:0)

$.ajaxSetup({async:false});
$.post("/Administration/Locations/DoAction",
    { partitionKey: id.substring(14),
            rowKey: id.substring(4, 14),
            action: ac,
            datastore: $("#DataSource").val()
    },
    function (data) {
      xx
    },
    "json"
).error(function() {
  xx
});

文档http://api.jquery.com/jQuery.post/

$.post()

相同
$.ajax({
  type: 'POST',
  url: url,
  data: data,
  success: success,
  dataType: dataType
});

答案 1 :(得分:0)

根据您的应用程序,您可以使用全局错误处理程序和/或successhandler。但最有可能只是第一个。结合彼得的回答,你应该好好去。要设置这些全局处理程序,请使用

$.ajaxError(...)
$.ajaxSuccess(...)

http://api.jquery.com/jQuery.ajaxSetup/。在该页面上列出了一个列出所有全局ajaxHandler-initializers的方法列表。