日期:2014-05-16  浏览次数:20397 次

使用eval动态访问json属性

假如有这样一个json对象:

json = {"name":"tiroc", "age":"25", "weight":"65"};

?有这样一个表格:

<table>
    <tr>
        <td>姓名</td>
        <td id="name" class="data"></td>
    </tr>
    <tr>
        <td>年龄</td>
        <td id="age" class="data"></td>
    </tr>
    <tr>
        <td>体重</td>
        <td id="weight" class="data"></td>
    </tr>
</table>

?以jQuery为例,可以这样将数据放入表格中:

var itemVal;
$(".data").each(function(){
    eval("itemVal = json." + this.id + ";");
    $(this).html(itemVal);
});

?可惜Javascript不能重载[ ],要不然写成ruby的hash那样就方便了json["属性名"]。