字符串终止问题

时间:2009-11-05 14:32:04

标签: javascript html

当我尝试运行此脚本时,我在IE中收到错误:

Unterminated string constant


<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">

    <script language="javascript" type="text/javascript">
        var designDocumen;
        var designEditor;

        Initialize();
       function Initialize() {     
           designEditor = $get('myframe');

            designDocument = this.designEditor.contentWindow.document;            

            var outerHTML =
            "<!DOCTYPE html PUBLIC '-//W3C//DTD XHTML 1.0 Transitional//EN' 'http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd'>" +
            "<html xmlns='http://www.w3.org/1999/xhtml'>" +
            "<head>" +
            "<title>Design Editor Frame</title>" +
            "<style type='text/css'>" +
            "body {background-color:Green;}"+
            "</style>" +
            "</head>" +
            "<body></body>" +
            "</html>";                      

           designDocument.open("text/html", "replace");
           designDocument.write(outerHTML);
           designDocument.close();               
        }           


    </script>
</head>
<body>
    <form id="form1" runat="server">
    <div>      

     <iframe id="myframe" height="500px" width="500px">
     </iframe>
    </div>
    </form>
</body>
</html>

我该如何解决这个问题?如何纠正这个字符串?

更新 问题在于:

  

"<title>Design Editor Frame</title>"

如果我删除它,它可以工作!

3 个答案:

答案 0 :(得分:4)

+之后缺少"body {background-color:Green;}"

答案 1 :(得分:3)

在此行+之后,您错过了"body {background-color:Green;}"

答案 2 :(得分:0)

四件事;

  1. 您声明designDocumen但稍后使用designDocument
  2. 您需要在调用之前定义函数Initialize()
  3. 您需要将此脚本放在body元素的底部,否则iframe将无法使用。
  4. 您没有$get的定义,因此您需要包含正确的脚本库才能使用此方法。