我有一个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>-->
关于这里可能出现什么问题的任何想法?
答案 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
对象。