0

開発中のPhoneGap/jQueryMobileアプリがあります。以前に使用したスクリプトで奇妙な結果が得られます。

$.ajax({type: "GET",
            url: "http://****.net/****/GetMembers.php",
            data: {get_param: "Member"},
            dataType: "json",
            success: function (data) {
                $.each(data, function (index, element) {
                    $("#members-content").append("<li><a id='members-a-" + element.ID + "' data-id='" + element.ID + "' href='#member-details'><img src='" + element.ImgURL + "' /><h3>" + element.Name + "</h3></a></li>");
                    $("#members-a-" + element.ID).bind('click', function () {Members.MemberID = $(this).attr('data-id'); MemberDetails.Load(); });
                    $("#members-content").listview("refresh");
                    });
           }
    });

Webサービスから返されたJSON:

[{"Member":{"ID":1、 "Name": "Member 1"、 "ImgURL":null}}、{"Member":{"ID":2、 "Name": "Member 2" 、"ImgURL":null}}、{"Member":{"ID":3、 "Name": "Member 3"、 "ImgURL":null}}、{"Member":{"ID":4、 "名前": "メンバー4"、 "ImgURL":null}}]

私の#members-contentリストではundefined<h3>name要素を取得しています。

4

3 に答える 3

1

2 つのオプションがあります。ここでフィドルで 2 つを見つけてください

現在行っているようにループしますが、1 つの変更があります。

これはこうでなければならないelement.Member.Name

または、次のようにもう一度ループします。

$.each(data, function (index, element) {
   $.each(element, function (index, e) {
    console.log(e.Name); // <----here you will get the correct response
   });
});
于 2013-02-14T17:51:24.980 に答える