我正在构建一个新网站,并希望使用Ajax控件。
我是否需要在MasterPage和每个内容页面上放置ScriptManager控件?或者只是在MasterPage上?(或者只是在内容页面上?)
答案 0 :(得分:13)
内容页面或MasterPages只能有一个ScriptManager控件。如果您的MasterPage上有ScriptManager控件,则可以将ScriptManagerProxy控件拖放到内容页面上,以使用任何给定的特定ASP.NET AJAX功能,例如:
<asp:Content ID="Content1" ContentPlaceHolderID="BodyContent" runat="server">
<asp:ScriptManagerProxy ID="ScriptManagerProxy1" runat="server">
<Services>
<asp:ServiceReference Path="~/MyWebServices/YourCoolWebService.asmx" />
</Services>
</asp:ScriptManagerProxy>
<%-- more content stuff goes here --%>
<asp:Content>
答案 1 :(得分:6)
您只能拥有一个ScriptManager。你也可以拥有它。将它放在母版页上可以节省在内容页面上添加它的任务。但是,只有在内容页面中包含自定义脚本,才能在脚本管理器中编写自定义脚本。如下所述,有两个ScriptManagers在加载页面时抛出错误。
答案 2 :(得分:1)
只是母版页。除非您打算使用上面提到的自定义脚本,否则我建议您将其放在母版页上,这样您就不必将它放在每个将使用ajax控件的页面上。
如果你同时使用它会抛出错误,说你只能有一个scriptmanager / page
答案 3 :(得分:1)
您在寻找什么功能?有可能你可以做更多或者更多,但是如果你使用jQuery,那么占用空间更小,代码性能更好,并且可以更好地控制实际发生的事情。看看吧!
答案 4 :(得分:1)
jQuery vs ASP.NET AJAX不是“问题或者问题”。虽然它们具有重叠的功能,但它们非常不同,我每天都根据任务使用它们。尽可能使用jQuery - 但MS AJAX增加了大量的ASP.NET便利功能。