通过字符串访问json数组? (将字符串转换为var。名称)

问题描述 投票:0回答:2

我正在尝试发布“lang_id”var。使用jquery来获取(json)数据的“get_lang.php”。但我无法访问数据。

现在尝试做

  var r = $(this).attr('rel');
  var v = data.r;

但这不起作用,因为“r”是字符串IMO。

也试过了

data.window[r] // but...

“get_lang.php”;

$lang_id = (int) ($_POST['lang_id']);

if($lang_id == 1)
{
     $lang['simple'] = 'aaa';
     $lang['array'] = 'bbb';
}

if($lang_id == 2)
{
     $lang['simple'] = 'ccc';
     $lang['array'] = 'ddd';
}

print json_encode($lang);

my.js;

$.post("get_lang.php", { "lang_id": 2}, function(data){

   $('.lang').each(function() {

     var r = $(this).attr('rel');
     var v = data.r;

     $(this).text(v);

    });

},"json");

感谢帮助。

php string json variables
2个回答
1
投票

尝试

var v = data[r];

点符号将r解释为字符串而不是变量。


0
投票

我想也许你需要告诉jQuery正确的内容类型。把它放在你的get_lang.php文件的顶部

header("Content-Type: application/json");

看看jQuery是否喜欢它。

© www.soinside.com 2019 - 2024. All rights reserved.