不能在JavaScript中根据php的json id设置变量


can't set variable in JavaScript based on json id from php

我有一个简单的数组从php文件(不使用json文件的原因是这个信息来自mysql数据库)

$array[0] = array('id' => 1,'price' => '325');
$array[1] = array('id' => 2,'price' => '486');      
header('Content-type: application/json');
echo json_encode($array);

,它回显为:

[{"id":1,"price":"325"},{"id":2,"price":"486"}]

现在我要做的是将id添加到一个名为counterval的变量中这样JavaScript就会将其读取为

counterval1 = 325;
counterval2 = 486;

但是我似乎不能让它读成那样。以下是当前的脚本:

$.getJSON('test.php',function(data) {
    $.each(data, function(i) {
    counterval + data[i].id = data[i].price;
    console.log (counterval2);
});
    $('#results').html(counterval2);    
});
var counterval1 = 0;
var counterval2 = 0;

你不能那样做…但是你可以这样做…

var counterval = [];
$.getJSON('test.php',function(data) {
    $.each(data, function(i) {
         counterval[data[i].id] = data[i].price;
         console.log (counterval[2]);
    });
    $('#results').html(counterval[2]);    
});
counterval[1] = 0;
counterval[2] = 0;

看我对你帖子的评论。如果您真的希望变量看起来像您解释的那样:

eval("counterval" + data[i].id + " = data[i]..price");
alert(counterval1);