对于带有属性的标记,document.write中使用的语法是什么?

时间:2012-05-08 06:18:28

标签: javascript document.write

我在javascript的document.write方法中使用以下代码:

    <script type="text/javascript">
      document.write("<font color="blue">["+time()+"]</font>");
    </script>

但这似乎不起作用。 请指导我。

3 个答案:

答案 0 :(得分:4)

问题直接与HTML无关,只是简单地说明了字符串文字在JavaScript(以及几乎所有其他编程语言)中的工作方式。如果要在用"个字符分隔的JavaScript字符串中使用"字符,则必须将其转义:\"。或者,使用'来分隔字符串或属性值。

document.write("<font color=\"blue\">["+time()+"]</font>");
document.write('<font color="blue">['+time()+"]</font>");
document.write("<font color='blue'>["+time()+"]</font>");

也就是说,使用document.write生成HTML通常不是一个好主意(它只能在加载时工作,通常更好地替换为更可靠的服务器端代码或更多可重用的DOM操作))和{{ 1}}元素已被弃用。

答案 1 :(得分:0)

<script type="text/javascript">
      document.write("<font color=\"blue\">[" + time() + "]</font>");
</script>

<script type="text/javascript">
      document.write('<font color="blue">[' + time() + ']</font>');
</script>

请注意,time作为JavaScript中的函数不存在 - 我假设你创建了一个上面没有包含在代码片段中的函数。除非你只是在尝试,否则你不应该真正使用document.write。您可以使用Firefox的Firebug或Safari / Chrome Web Inspector中的console.log来测试所有这些,与完整页面刷新相比,试验速度更快。还注意到我如何在+标志的两侧添加空格:更容易阅读。

答案 2 :(得分:-1)

var color = 'blue';     
document.write("<font color="+color+">["+time()+"]</font>");

或者

 document.write("<font color='blue'>["+time()+"]</font>");