1

我正在尝试从字符串中获取数据,并且我想在我的 html 中显示它。

这是我尝试过的代码

var jsn = {
        "channels": [{
            "name": "video1",
                "image": "images/bodyguard.jpg"
        }, {
            "name": "video2",
                "image": "images/bodyguard.jpg"
        }, {
            "name": "video3",
                "image": "images/bodyguard.jpg"
        }, {
            "name": "video4",
                "image": "images/bodyguard.jpg"
        }, {
            "name": "video5",
                "image": "images/bodyguard.jpg"
        }]
    };
    var id = document.getElementById("menu_list");
    var inHtm = "";
    var channels = jsn.channels.length;
    var cha = jsn.channels;
    alert("channels : " + channels);

    if (channels != undefined) {
        for (var i = 0, len = channels; i < len; ++i) {
            var item = cha[i].name;
            alert(item);
            //var name = item.name;
            var image = cha[i].image;

            inHtm += '<div class="menu"><a href="javascript:void(0);" onkeydown="Main.keyDown();" >';

            inHtm += '<img src="' + image + '"/>';
            inHtm += '</a></div>';
        }
        alert(inHtm);
        in1.innerHtml = inHtm;
    }

我的小提琴

它正在将值分配给 inHtm,但我的 innerHTML 没有得到更新。我想在我的 html 中显示图像

4

1 回答 1

1

这个:

 in1.innerHtml = inHtm;

应该:

 id.innerHTML = inHtm;

您的对象id不是in1,属性innerHTML不是innerHtml

我还建议使用console.log()for Debugging 而不是alert(). 警报很痛苦,尤其是在循环中,并且console.log()您可以转储整个对象,而警报只会显示“对象”。

更正的小提琴

于 2013-06-17T10:38:58.100 回答