none
使用Webbrowser加载带有JS的html时,如果JS脚本是引入的js文件时,执行脚本失败 RRS feed

  • 问题

  • 我使用如下方法加载HTML

     using (StreamReader reader = new StreamReader(TitleContainer.OpenStream("Demo.html")))
                {
                    string html = reader.ReadToEnd();
                    browser.NavigateToString(html);
                }

     

    HTML如下:

    <html>

    <head>
        <style type="text/css">
            #Submit1
            {
                width: 164px;
                height: 38px;
            }
        </style>

       
        <script type="javascript" src = "javascript\Message.js" />

        <script type="text/javascript" language="javascript">

    function CallMessage() {
        document.write("liv");
        var message = new Message();
        message.Subject = "HELLO";
        message.MessageType = "SMS";
        message.DestinationAddress = "1356898978";

        document.write(message.Subject);
        document.write("<br>");
    }

        </script>


    </head>

    <body>

     

    <p><input id="Submit1" type="submit" value="Call Message" onclick="CallMessage()" /></p>


    </body>


    </html>

     

    其中javascript\Message.js文件内容如下:

        Message = function () {
        this.Subject = "";
        this.MessageType = "SMS";
        this.DestinationAddress = "";

    }

     

    此时点击按钮则无法执行脚本,如果将javascript\Message.js直接写入到HTML文件里面,执行则成功,不知道为什么,难道不允许引用外部JS文件?

    2011年10月10日 8:37

全部回复