[英]A page can only have one server-side form tag, but I need two
当前,我的ASP.NET Web应用程序正在使用母版页,嵌套母版页和内容页。 在嵌套的母版页上,我有一个用于导航链接的内容占位符,另一个用于主要内容。 之所以有两个,是因为我的主母版页已经为其余页面确定了固定格式,并且我使用嵌套的母版页,因为我需要使用不同类型的导航链接来实现网站中使用的不同角色。 但是,对于导航链接,LinkButton用于退出按钮,因此它要求我使用带有runat =“ server”的表单标签,以便我能够运行页面。 但是,在我的内容页面中,我还需要一个表单runat =“ server”标签作为我的主要内容。 :-(是否有人对如何解决此问题提出建议?我想坚持使用多个内容占位符,以便较小的更改不会影响整个页面。
无论如何,这是我的母版代码段
<asp:Content ID="Content1" ContentPlaceHolderID="navigationlinks" runat="server">
<form id="navForm" runat="server">
<a class="toggleMenu" href="#">
<img src="images/nav_icon.png" alt="" />
</a>
<ul class="nav" id="nav">
<li class="current"><a href="UserHome.aspx">Home</a></li>
<li><a href="UserCompetition.aspx">Competition</a></li>
<li><a href="UserGallery.aspx">Gallery</a></li>
<li class="dropdown">
<a class="dropdown-toggle" data-toggle="dropdown" href="#">Discussions
</a>
<ul class="dropdown-menu">
<li><a href="UserDiscussionCreate.aspx">Create Discussion</a></li>
<li><a href="UserDiscussionView.aspx">View Discussion</a></li>
</ul>
</li>
<li><a href="UserSubmission.aspx">Submission</a></li>
<li><a href="UserResults.aspx">Results</a></li>
<li><a href="UserMyAccount.aspx">My Account</a></li>
<div class="clear"></div>
</ul>
<script type="text/javascript" src="js/responsive-nav.js"></script>
</form>
<asp:Content ID="Content3" ContentPlaceHolderID="Content1" runat="server">
<asp:ContentPlaceHolder ID="ContentPlaceHolder1" runat="server"></asp:ContentPlaceHolder>
</asp:Content>
ContentPlaceHolder1用于内容页面中的主要内容。 因此,即使已经在“ navigationallinks”中使用了表单标签,我仍然需要另一个表单标签
在我的内容页面中,我还需要一个表单runat =“ server”标签作为我的主要内容。
您已经有了它,因为此页面具有包含服务器端表单标签的母版页! 当您拥有
<form runat="server">...</form>
使用该母版页的所有页面都将具有该表单,而无需在页面中再次添加!
编辑:
只需删除任何页面或嵌套母版页中的所有表单标签,然后将其包含所有元素的母版页添加到该母版页中即可。
在具有<body>
标记的母版页内,在主体之后添加<form runat="server">
标记,并在</body>
之前将其关闭。 并删除所有其他表单标签。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.