0

次のようなjsonエンコードされた結果を返すPHPスクリプトがあります。

// I added "var jsonp =" manually to make it an array variable.

var jsonp = [
    [
        {
            "txtHide": "Y",
            "data": "2012-12-21",
            "phone": "+15879891300",
            "Text": "Hello"
        },
        {
            "txtHide": "Y",
            "data": "2013-01-08",
            "phone": "+15879891400",
            "Text": "Issue"
        },
        {
            "txtHide": "Y",
            "data": "2013-01-19",
            "phone": "+15879891040",
            "Text": "This is a test "
        }
    ],
    [],
    [
        {
            "txtHide": "Y",
            "data": "2013-01-16",
            "phone": "+142610588790",
            "Text": "kkk 1"
        },
        {
            "txtHide": "Y",
            "data": "2013-01-18",
            "phone": "+123610588790",
            "Text": "Test 23"
        },
        {
            "txtHide": "N",
            "data": "2013-01-22",
            "phone": "+123610588790",
            "Text": "Hi"
        }
    ],
    [],
    [],
    [],
    [
        {
            "txtHide": "Y",
            "data": "2013-01-05",
            "phone": "+221522988655",
            "Text": "oo 12"
        }
    ]
]

JQueryを使用してこのJSON結果をループするにはどうすればよいですか?

これが私がしたことですが、最初の4行だけが出力されます。

$.each(jsonp, function(i,val) {
        console.log(val[i].txtshare);
        console.log(val[i].dtzserver);
        console.log(val[i].txtphonee164);
        console.log(val[i].txtfinding);
    });

私のFirebugコンソールの出力:

Y
2012-12-21
+15879891300
Hello
4

2 に答える 2

0

3次元配列があるため、2つのループが必要です。

$.each(jsonp, function() {
    $.each(this, function () {
        console.log(this.txtshare);
        console.log(this.dtzserver);
        console.log(this.txtphonee164);
        console.log(this.txtfinding);
    });
});
于 2013-01-24T00:40:37.137 に答える
0

この例では、「val」はメインの「jsonp」配列にネストされた配列を指します。次のようなネストされた配列の内部コンテンツを取得するには、ネストされた$.each構造体が必要です。

$.each(jsonp, function(index, value){
    $.each(value, function(index, innerval){
        console.log(innerval.txtshare);
        //... and so on
    });
});
于 2013-01-24T00:42:17.553 に答える