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

Nev*_*hai 8 asp.net ajax asp.net-ajax scriptmanager

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

  "Only one instance of a ScriptManager can be added to the page."
Run Code Online (Sandbox Code Playgroud)

尽管我评论了ASP ScriptManager并使用了toolkitscriptmanager这一事实.但请注意我仍在使用ASP UpdatePanels.

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

                  <!-- <asp:ScriptManager ID="ScriptManager1" runat="server">
                                 </asp:ScriptManager>-->
Run Code Online (Sandbox Code Playgroud)

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

Eil*_*lon 13

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

<%-- <asp:ScriptManager ID="ScriptManager1" runat="server"> 
                             </asp:ScriptManager> --%>
Run Code Online (Sandbox Code Playgroud)

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

  • 在Web表单中进行评论(并避免此类错误)的简单方法是使用热键CTRL + K,C进行评论,使用CTRL + K,U进行取消注释.在代码隐藏中,您可以将光标放在一行的任何位置进行注释/取消注释; 在网络表单中,突出显示的选择必须在您要评论的位置开始和结束. (4认同)

cit*_*nas 7

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