我有一个 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.
我知道,因为我在母版页上有一个 Form 标签。现在,如果我尝试从母版页中删除表单标签(我认为没有必要),则出现错误为:Control 'ctl01' of type 'ScriptManager' must be placed inside a form tag with runat=server.
我的问题是:如何在不删除ScriptManager
的情况下在主Form
和内容页面上使用标签。或者有没有其他选择来实现这一点?
只需从内容页中删除表单标记 - 母版页上的表单标记就足够了。 您需要母版页上的 ContentPlaceHolder 标记位于表单中才能正常工作。