0

我有一个返回 JSON 的 ASP.NET 网络服务。现在,我想使用 jQuery 调用这个 web 服务,然后循环查看结果。但是怎么做?

我现在有这个:

jQuery.support.cors = true;
$().ready(function () {
    $.ajax({
        type: "GET",
        url: "http://www.wunderwedding.com/weddingservice.svc/api/?t=1&cid=1&pid=6&lat=52&lng=5&d=10000&city=nijmegen&field1=0&field2=0&field3=0&field4=0&hasphoto=0&hasvideo=0&minrating=0&lang=nl",
        data: "{}",
        contentType: "application/json; charset=utf-8",
        dataType: "json",
        success: function (msg) {
            // Hide the fake progress indicator graphic.
            $('#mytest').removeClass('loading');
            alert(msg.d);
            // Insert the returned HTML into the <div>.
            $('#mytest').html(msg.d);
        }
    });
4

2 回答 2

1

假设您的 web 方法正在返回一组人员,因此在成功方法中您可以像这样循环遍历它:

$.each(msg.d.Persons, function(index, Value)
{
      firstName = msg.d.Persons[index].FirstName;
});
于 2012-06-01T11:05:05.403 回答
-1

如果您的 Web 服务返回 JSON,那么最好解析它。

假设你的 json 是这样的:

{
    "Status": "ok",
    "Persons": [
        {
            "Name": "John"

        },
        {
            "Name": "Louis"
        }
    ]
}

 success: function (msg) {
        var obj = JSON.parse(msg);

        //get the status value:
        var status = obj.Status;

        //Loop through Persons array:
        var names = {};
        $.each(obj.Persons, function (index, Person) {
            names[index] = Person.Name;
        });


    }

要使用 JSON.parse() 你可能需要这个:

https://github.com/douglascrockford/JSON-js/blob/master/json2.js

于 2012-06-01T11:34:14.523 回答