将变量(从json中抓取)插入到元素中

时间:2013-02-18 02:01:33

标签: javascript json variables callback youtube

我有一个从YouTube json回调中获取视频标题的功能,但是我在将变量插入元素时遇到了问题。

这是我抓住的饲料:

<script type="text/javascript" src="http://gdata.youtube.com/feeds/api/videos/2WNrx2jq184?v=2&amp;alt=json-in-script&amp;callback=youtubeFeedCallback"></script>

我正在使用的javascript函数:

function youtubeFeedCallback(data) {
var info = data.entry.title.$t;
document.write(info);
}

这样可以正常工作,但我想将其插入ID为“box”的div中。

通常我会使用以下内容(并将其添加到函数中 - 并删除document.write):

var box = document.getElementById('box');
box.innerHTML = info;

我只是不能让这个工作。实现我想要做的事情的正确方法是什么?感谢

http://jsfiddle.net/b3VYT/

2 个答案:

答案 0 :(得分:2)

要么确保脚本位于元素下面,要么将代码包装在document.ready回调中,以便在加载DOM之后才能运行它。

http://jsfiddle.net/b3VYT/1

答案 1 :(得分:0)

您需要确保在脚本执行之前声明您正在使用的元素:

<div id='test'></div>
<script>
    function youtubeFeedCallback(data) {
         document.getElementById('test').innerHTML = data.entry.title.$t;
    }
</script>

Example