打印出一个javascript变量(不显示?)

时间:2012-12-02 20:31:51

标签: javascript jquery

我想确保javascript变量在将其设置为ruby变量时获取传递给它的正确值。

<script type="text/javascript" charset="utf-8">

   var test = <%= @test || 'null' %>;
   document.write(test);

</script>

然而,似乎没有任何输出。我只试过document.write("somethinganything")而我仍然没有看到任何输出。它应该出现在网页或终端上吗?我两个都找不到任何东西。

3 个答案:

答案 0 :(得分:6)

document.write打印到网页。您应该尝试使用console.log打印到终端。

答案 1 :(得分:3)

除非脚本块位于document.write(),否则不应使用<body>打印可见内容。

某些较旧的浏览器不支持此功能,如果脚本块位于<head>中,则不会写入任何可见的内容。

请尝试使用以下解决方案之一:

// Append a text node to the end of your body
window.onload = function() {
    var txt = document.createTextNode(test);
    document.body.appendChild(txt); 
};

// Log the text to your javascript console
console.log(test);

// Alert the text in a popup
window.alert(test);

答案 2 :(得分:1)

你必须写console.log("test");