为什么我的ie条件注释导致编译错误时不通过Response.Write添加
本文关键字:Response 添加 Write 错误 编译 ie 我的 条件 注释 为什么 | 更新日期: 2023-09-27 17:54:16
我有一个有条件注释的页面:
<%@ Page language="c#" %>
<html>
<head>
<title>ASP.NET Application</title>
<!--[if lt IE 8]><script type="text/javascript" src="scripts/json_parse.js"></script><![endif]-->
</head>
<body>
test
</body>
<html>
当我像上面那样做时,它抛出一个编译错误,说它需要一个结束的"script"标记。但是下面的代码(应该以相同的页面结束)可以完美地工作:
<%@ Page language="c#" %>
<html>
<head>
<title>ASP.NET Application</title>
<!--[if lt IE 8]>
<% Response.Write( "<script type='"text/javascript'" src='"scripts/json_parse.js'"></script>" ); %>
<![endif]-->
</head>
<body>
test
</body>
<html>
为什么IE条件句有问题?script标签位于注释内,而不是"runat"。
在这种情况下,您希望条件注释显示给底层浏览器,而不是被上层浏览器隐藏,因此使用的语法略有不同:
<![if lt IE 8]>
<script type="text/javascript" src="scripts/json_parse.js"></script>
<![endif]>