ajax成功后循环JSON响应

时间:2012-04-20 18:44:33

标签: jquery ajax json callback

对不起,这是here在SO中提出来的副本,但我是新手,所以我想知道怎么做?

这是我的ajax电话:

  $("#btnprocess").click(function () {
                $.ajax({
                    type: "POST",
                    url: "Default.aspx/GetFilenames",
                    data: "{}",
                    contentType: "application/json; charset=utf-8",
                    dataType: "json",
                    success: function (response) {
                        alert(response.d[0]);
                        alert(response.d[1]);
                      }
                });
  });

单独我能够得到响应,但我需要循环它们。

谁能说我怎么做?

3 个答案:

答案 0 :(得分:10)

使用$.each()

$.each(response.d, function(key, value) {
    //For example
    console.log(key + value)
})

查看here以了解相关信息。 (编辑:或here - 如果您愿意的话,这是一个视频教程。)

答案 1 :(得分:7)

如果response.d是一个数组,你可以把它放在一个for循环中,如下所示:

for ( var i = 0; i < response.d.length; i++ ) {
    // do action here
}

这种方法比jQuery $.each()函数更受欢迎,因为它具有更快的性质。查看此Fiddle,了解for$.each()的比较。

答案 2 :(得分:5)

你可以做;

for (var i=0; i<response.d.length; i++) {
 alert(response.d[i]);
}