我有一个带有一个母版页和多个内容页的ASP.NET应用程序。
这是母版页的开头
<body>
<form runat="server">
<asp:ScriptManager runat="server">
<Scripts>
<%-- Scripts Omitted --%>
</Scripts>
</asp:ScriptManager>
.
.
.
.
.
现在,我有一个注册页面,其中包含要提交的表单。这是开始
<asp:Content ID="BodyContent" ContentPlaceHolderID="MainContent" runat="server">
<br />
<form id="Form1" runat="server">
<div class="register">
<br />
.
.
.
每当我尝试运行Register.aspx
页面时,它都会给出错误:A page can have only one server-side Form tag.
我知道它,因为我在母版页上有一个表单标记。现在,如果我尝试从母版页中删除表单标记(我认为不必要),我收到的错误为:Control 'ctl01' of type 'ScriptManager' must be placed inside a form tag with runat=server.
我的问题是:如何在不删除Form
的情况下在主页和内容页面上使用ScriptManager
标记。或者有任何替代方法可以实现这一目标吗?
答案 0 :(得分:1)
只需从内容页面中删除表单标记 - 母版页上的表单标记就足够了。您需要母版页上的ContentPlaceHolder标记位于表单中才能使其生效。