只能将一个ScriptManager实例添加到页面中

时间:2010-01-03 19:55:35

标签: asp.net ajax asp.net-ajax scriptmanager

我有一个ASP UpdatePanel来更新一个工作正常的gridview,现在我也想在那里使用AjaxControlToolkit来控制一些控件,但在运行后连接所有内容后我得到一个错误

  "Only one instance of a ScriptManager can be added to the page."

尽管我注释了ASP ScriptManager并使用了toolkitscriptmanager。但请注意,我仍在使用ASP UpdatePanels。

 <asp:ToolkitScriptManager ID="ToolkitScriptManager1" runat="server">
                    </asp:ToolkitScriptManager>

                  <!-- <asp:ScriptManager ID="ScriptManager1" runat="server">
                                 </asp:ScriptManager>-->

关于这里可能出现什么问题的任何想法?

2 个答案:

答案 0 :(得分:13)

您正在使用HTML注释来隐藏ASP.NET服务器标记。改为使用服务器评论:

<%-- <asp:ScriptManager ID="ScriptManager1" runat="server"> 
                             </asp:ScriptManager> --%>

ASP.NET忽略HTML注释,就像它忽略了所有没有runat =“server”的标签或者不以<%开头的标签。

答案 1 :(得分:7)

原始错误消息告诉您尝试拥有多个ScriptManger个对象。如果您在MasterPage和继承母版页的单个页面中使用ScriptManager,则会出现这种情况。 为了避免这种情况,<Asp:ScriptManagerProxy>可以作为另一个ScriptManager使用,但它只会将调用传递给母版页中的ScriptManager对象。