(转)" />
zoukankan      html  css  js  c++  java
  • 在ASP.NET AJAX中别使用(转)

    在ASP.NET AJAX中别使用<xhtmlConformance mode="Legacy"/>

    把VS 2003 Web项目自动移植到VS 2005的,在web.config文件中还配置有 <xhtmlConformance mode="Legacy"/> 。

    在使用ASP.NET AJAX UpdatePanel 控件时,这个奇怪的行为有时会包括页面做整页 postback,而不仅是递增性的局部更新的情形。

    当你打开你的web.config文件,你会看到其中的 <xhtmlConformance/> 元素,象这样:

    <configuration>

        <system.web>
            <xhtmlConformance mode="Legacy" />
         </system.web>

    </configuration>

    ASP.NET 1.0 和 1.1 中的许多服务器端控件并不输出与XHTML兼容的标识。ASP.NET 2.0 对此做了改变,在默认情形下,所有的服务器端控件都会输出与XHTML兼容的标识.

    但在早期的ASP.NET 2.0 beta 中我们注意到的一件事情是,当把客户应用升级时,其实,很多应用会假设页面输出并不是与XHTML兼容的。把我们服务器控件的默认输出改成与XHTML兼容的话,它有时会修改页面的视觉显示。为向后兼容的目的,我们添加了上面这个 <xhtmlConformance> 设置,允许开发人员可以设置控件以Legacy模式(即与ASP.NET 1.1一样,会输出非XHTML标识),或者Transitional 模式 (XHTML Transitional) ,或者 Strict 模式 (XHTML Strict)显示。

    在默认情形下,当你使用VS 2003升级到VS 2005的Web项目移植向导时(无论是网站或 web 应用项目),你的web.config文件里会添有这个legacy配置。

    解决方案:

    除非你已知当你的网站以XHTML模式运行时会有问题(但你还没时间更正),我总是从web.config文件里去掉 <xhtmlConformance> 这部分,或者明确地将其设置为Transitional 或 Strict。

    这将使得你的HTML输出是符合标准的,此外,这也将导致你的服务器控件的HTML输出是well formed,即,开始标签和结束标签总是相匹配的。当你使用AJAX技术来动态替换你的页面上某些HTML元素的内容时,这尤其重要,否则的话,客户端 JavaScript脚本有时会搞不清楚容器元素,导致出错。它也将确保ASP.NET AJAX会在你的网站上正常工作。


  • 相关阅读:
    UNION ALL
    jquery.validate的使用
    通过匹配绑定select option的文本值 模糊匹配
    .net 时间操作[摘抄]
    判断Table表中是否含有某一列
    将数组,表的某一列转换为string字符串的方法
    选出某一列不重复,某一列作为选择条件,其他列正常输出(摘抄)
    SQLite 解决:Could not load file or assembly 'System.Data.SQLite ... 试图加载格式不正确的程序(转)
    金山毒霸占用80端口
    DropDownList 绑定数据后 插入一条不属于表中的数据
  • 原文地址:https://www.cnblogs.com/hakuci/p/1202025.html
Copyright © 2011-2022 走看看