在ASP.NET AJAX中別使用mode=“Legacy”
2006/12/22 9:29:33
癥狀: 
  當你往先前成功地從VS 2003 升級到VS 2005的項目中添加新的客戶端JavaScript腳本時,你會看到奇怪的行為。在使用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會在你的網站上正常工作。

返回列表
返回首頁 主站蜘蛛池模板: 无翼乌全彩本子lovelive摄影| 精品一区二区三区在线观看| 国产精品久久久久无码av | 精精国产XXXX视频在线| 国产成人精品久久亚洲高清不卡| 91欧美激情一区二区三区成人 | 91色视频在线| 女人把腿给男人桶视频app| 中文字幕在线观看第一页| 日韩精品专区av无码| 亚洲图片中文字幕| 91freevideos精品| 妇女性内射冈站HDWWWCOM| 久久91精品国产91久久| 日韩午夜在线观看| 亚洲va欧美va天堂v国产综合| 永久黄网站色视频免费观看| 免费人成在线观看网站品爱网日本| 老师xxxx69动漫| 国产乱子经典视频在线观看| 黄网站色年片在线观看| 国产精品igao视频| 2019天天干| 国产色丁香久久综合| 99国内精品久久久久久久| 女人18特级一级毛片免费视频| 一级毛片恃级毛片直播| 成年丰满熟妇午夜免费视频| 久久99精品国产麻豆婷婷| 日本精品久久久久中文字幕| 久久青草国产精品一区| 樱花草在线社区www| 亚洲区小说区激情区图片区| 欧美日韩中文国产一区| 亚洲欧美色鬼久久综合| 波多野结衣被强女教师系列| 人人做人人爽人人爱| 狼友av永久网站免费观看| 免费大片黄在线观看| 精品亚洲欧美无人区乱码| 又色又爽又黄的视频网站|