SharePoint 2007 母版頁添加ScriptManager報錯解決

按照 SharePoint Team Bolg 文章,文章中建議你們將 <ScriptManager> 放置到母版頁中,緣由是若是動態添加,有時並不能保證在頁面生命週期中比依賴他的控件更早的添加到頁面中,並且有時代碼若是編寫的很差會形成頁面中出現多個 <ScriptManager> 實例,這對於 AJAX 技術來講是錯誤的,一個頁面上僅能存在一個支持 AJAX 技術的 <ScriptManager> 。因此建議將 <ScriptManager> 放置在母版頁中,而不是在代碼中來動態加載它。
這篇文章裏面建議在頁面的 <WebPartPages:SPWebPartManager id="m" runat="Server" /> 標籤下添加 <ScriptManager> ,我使用發佈網站模板建立的網站,結果按照作以後發現是錯誤的,頁面報錯,仔細觀察後發現, SPWebPartManager 放置在了 <form> 標籤以外,不是表單中的內容,我懷疑是這裏的問題,便將 <asp:ScriptManager runat="server" ID="ScriptManager1"></asp:ScriptManager> 添加到了 <form> 標籤以內,刷新頁面,錯誤解決。
這裏也有一個須要注意的地方,在更換母版頁的時候千萬記得加上 <asp:ScriptManager runat="server" ID="ScriptManager1"></asp:ScriptManager>
default.master <WebPartPages:SPWebPartManager id="m" runat="Server" /> 確實出如今了 <form> 標籤內, BlueBand.master 卻不是。
繼續說另一個問題,就是文章裏面提到直接添加這個 <ScriptManager> 標籤,可是實際上這是不行的,咱們須要在頁面上引入對應的組件和命名空間,組件 System.Web.Extensions 已經在 web.config 中添加過了,因此這裏只須要引入命名空間便可,若是不引用的話頁面會識別不出 <ScriptManager> 而報錯。
在頁面 <html> 上面加入以下命名空間
<%@ Register TagPrefix="asp" Assembly="System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" Namespace="System.Web.UI" %>
相關文章
相關標籤/搜索