首页 > 编程 > .NET > 正文

Chrome内核下由ashx输出的js代码不起作用的解决方法

2020-01-18 00:05:07
字体:
来源:转载
供稿:网友

复制代码 代码如下:

public class Script
    {
      public static void Alert(string message)
        {
            ResponseScript("    alert('" + message + "');");
        }

        public static void ResponseScript(string script)
        {
            HttpContext.Current.Response.Write("<script type=/"text/javascript/">/n//<![CDATA[/n");
            HttpContext.Current.Response.Write( script );
            HttpContext.Current.Response.Write("/n//]]>/n</script>/n");
        }
    }

在form.ashx中调用:

复制代码 代码如下:

Script.AlertAndGoBack("温馨提示:有重复的用户!");

 结果在360的新版6.0中,一直不起作用,只是输出了

复制代码 代码如下:

<script type="text/javascript">
//<![CDATA[
    alert('温馨提示:有重复的用户!');
    window.history.back();

//]]>
</script>

但在IE中显示又完全正常。

后来发现,原来360浏览器的极速模式调用的是Google浏览器的Chrome内核,所以Chrome浏览器里这段代码也是不起作用。

解决办法:

复制代码 代码如下:

//将:
context.Response.ContentType = "text/plain";

//改为:
context.Response.ContentType = "text/html";

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表