asp.net - 为什么 ASP.NET 可能将 JavaScript 放在 HTML 注释 block 中,而不是 CDATA?

标签 asp.net javascript validation webforms

我们有一个使用 MS Ajax 1.0 的 ASP.NET 2.0 WebForms 应用程序。它在我们所有的环境(开发、测试、IE6 虚拟机等)上运行良好。但是,在客户站点,客户端验证并未发生。

我们目前正在尝试消除所有各种因素,并且在我们要求他们获取页面源并将其发送给我们的过程中,我们发现了一些有趣的东西。

在我们的环境中,我们的页面在 CDATA block 中有 ASP.NET javascript:

<script type="text/javascript">
//<![CDATA[
. . .
//]]>
</script>

在他们的环境中,相同的代码如下所示:

<script type="text/javascript">
<!--
. . .
//-->
</script>

这可能是一个转移注意力的问题,但我想将其作为验证问题的原因消除。

有谁知道 ASP.NET 的特定配置/补丁/版本是否可以做到这一点?

最佳答案

这可能与页面如何(或是否)有关 rendered as XHTML .在 web.config 中,查找 xhtmlConformance 元素。在您的示例中,您环境中的版本可以在 xhtml 中正确使用,但他们环境中的版本看起来像旧版 HTML,而不是 xhtml。

关于asp.net - 为什么 ASP.NET 可能将 JavaScript 放在 HTML 注释 block 中,而不是 CDATA?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2493945/

相关文章:

c# - Visual Studio Pro 是否随 SQL Server 一起提供?

c# - 在 ASP.NET MVC 4 中设置外键

javascript - 使用一个全局数据库查询填充多个网页输出?

javascript - 图像不会在幻灯片放映中显示

javascript - GraphQL 和 dataLoader 在不同的应用程序/服务器上

asp.net - 如何使用工作流引擎?

java - 警告对话框中 EditText 框的空验证 - Android

javascript - 在 JavaScript 中验证后提交表单的确认消息

php - JavaScript 函数没有响应

java - 自定义约束 validator 中的 Autowiring 存储库为空