在ajax中解析密钥返回了json数组

时间:2014-02-10 08:31:31

标签: php jquery ajax json

你好我从json jjax调用php文件中返回了json中的数组。这个数组看起来像这样:

array(
'LANG_PORTFOLIO'=>'Portfolio',
'LANG_ABOUT'=>'Company',
);

是否有可能以某种方式动态获得第一个密钥?

在我的jquery成功代码中,我有这个:

 success: function (data) {
        alert(data[0][0]);
        alert(data.[1]);
        alert(data.LANG_PORTFOLIO);
 }

只有最后提到的作品。但我不能动态地使用它。

我想实现这样的目标:

 for(var i in data){
     var key=data[0] //first key
     $("element[lang='"+key+"']").text(data.key); //add text with active language
 }

//我设置元素的lang参数等于数组'leftside'键。

有任何帮助吗?感谢

3 个答案:

答案 0 :(得分:1)

嗯,没有特殊的东西,但你可以使用:

for (key in data) break;
//now key will be first key of your object

因此,您的循环将如下:

for(var i in data)
{
    for (key in data[i]) break; //first key of data[i]
    //here is why I doubt: data[i], but data.key ??
    $("element[lang='"+key+"']").text(data.key); 
}

(我不确定逻辑,这是我从问题的帖子中看到的。特别是我怀疑,因为你的PHP中的JSON是1D阵列,而在JSON中你在2D上操作)

答案 1 :(得分:1)

for(var i in data){     
     $("element[lang='"+i+"']").text(data.[i]); //add text with active language
}

答案 2 :(得分:1)

尝试这种方式来分割你的JSON数组

success:function(data){
    $.each(data,function(key,value){
      $("element[lang='"+key+"']").text(value.LANG_PORTFOLIO);
    });
}