$ .getJSON语法

时间:2013-02-13 17:58:44

标签: javascript jquery asp.net-web-api

我有一个$ .getJSON调用,它通过进行Web API调用来填充集合:

$.getJSON("/api/rating", self.ratings);

如果我想添加$ .ajax中的一些选项,例如beforeSend,data,success等,我将如何重写?

编辑:我已经尝试过这两种方法,并且没有任何警报被点击:

  $.getJSON("/api/rating")
                .beforeSend(function (xhr) {
                    alert("before");
                    $('#divLoading').addClass('ajaxRefresh');
                    xhr.setRequestHeader('X-Client', 'jQuery');
                })
                .success(function (result) {
                    alert(result);
                    self.ratings = result;
                })
                .complete(function (result) {
                    alert("complete");
                    $('#divLoading').removeClass('ajaxRefresh');;
                })
              .error(function () {
                  alert("error");
              });

$.getJSON("/api/rating", self.ratings)
            .beforeSend(function (xhr) {
                alert("before");
                $('#divLoading').addClass('ajaxRefresh');
                xhr.setRequestHeader('X-Client', 'jQuery');
            })
            .success(function (result) {
                alert(result);
                self.ratings = result;
            })
            .complete(function (result) {
                alert("complete");
                $('#divLoading').removeClass('ajaxRefresh');;
            })
          .error(function () {
              alert("error");
          });

2 个答案:

答案 0 :(得分:1)

$。getJSON是:

的简写
$.ajax({
  dataType: "json",
  url: url,
  data: data,
  success: success
});

所以你的样本可以翻译成:

$.ajax({
  dataType: "json",
  url: "/api/rating",
  data: self.ratings,
  beforeSend: beforeSend,
  success: function (json) {
      // handle json
  }
});

答案 1 :(得分:1)

$.getJSON(<url>,<data>,<callback>)
 .success(function() {

  })
  .error(function () {
  });

修改

.success().error()已被弃用,因此应使用.done().fail()