在做一个.aspx的页面的时候,用ie9浏览器测试页面的时候,发现文档模式自动切换为“杂项(Quirks)”,导致页面严重变形。百度无果之后,我花了近2个小时的时间,
逐句检查错误代码,最后竟然惊奇地发现错误原因不在前台代码,而是在后台的.aspx.cs文件中。在后台文件中我有这样一段代码:
这段代码效果是在前台代码的第一行(在<!DOCTYPE html>之前)添加
逐句检查错误代码,最后竟然惊奇地发现错误原因不在前台代码,而是在后台的.aspx.cs文件中。在后台文件中我有这样一段代码:
Response.Write("<script type='text/javascript'> idLength = " + maxReader["max(id)"].ToString() + "</script>");这段代码效果是在前台代码的第一行(在<!DOCTYPE html>之前)添加
<script type='text/javascript'> idLength = " + (数据库中读取的字符串)+ "</script>这样生硬地给JavaScript定义一个变量。这样做破坏了html完整的文件结构,最终的结果就是在ie上显示的效果就是文档模式自动设置为“杂项(Quirks)”。
C#后台代码给JavaScript传值的正确做法应该是在前台用<%=%>获取。
详情查看这博客:http://bbs.youkuaiyun.com/topics/310246363
本文详细阐述了在使用IE9浏览器测试ASP.NET页面时遇到的问题,即页面文档模式自动切换为‘杂项(Quirks)’模式,导致页面严重变形。经过排查发现,问题根源在于后台的.aspx.cs文件中,C#代码以错误的方式向JavaScript传值,破坏了HTML文件结构。文章最后提供了正确的解决方法,并分享了一个相关博客链接。
227

被折叠的 条评论
为什么被折叠?



