通过javascript循环通过json字符串

时间:2011-01-25 12:28:46

标签: jquery json

我已经从数据库中检索了数据并像解决这个javascript一样对其进行了解析

var categories = <?php echo json_encode($categories); ?>;
源代码类别变量中的

具有以下值:

var categories = [{"id":"27","name":"john"},{"id":"8","name":"jack"}]

现在我正试图像这样遍历这个数组

$(document).ready(function(){
//alert(categories);
cats = jQuery.parseJSON(categories);

for (x in cats)
{
    alert(cats.name);
}
}
但是我什么都没得到。问题在哪里?

3 个答案:

答案 0 :(得分:2)

试试这个。

$(document).ready(function(){
    for (x in categories)
    {
        alert(categories[x].name);
    }
}

答案 1 :(得分:0)

即使你正在使用json_encode,你实际创建的是一个Javascript对象。 (JSON是一个表示Javascript对象的字符串。)由于JSON语法是有效的Javascript语法,因此工作正常。

只需移除对jQuery.parseJSON的来电,然后直接浏览categories

答案 2 :(得分:0)

这是另一个工作示例,复制粘贴并尝试...

$(document).ready(function () {
        var categories = ['{ "id": "27", "name": "john" }', '{ "id": "8", "name": "jack"}'];
        for (i = 0; i < categories.length; i++) {
            var c = jQuery.parseJSON(categories[i])
            alert(c.name);
        }
    });