0

我有一个这样的母版页

    <%@ Master Language="C#" MasterPageFile="~/masterpages/XmasShop.master" AutoEventWireup="true" %>
<asp:Content ContentPlaceHolderID="cphContents" runat="server">
    <asp:LoginView runat="server" ID="lview1">
        <LoggedInTemplate>
            <div class="confirmation-cantainer">
                <div class="confirm-01">
                    <form runat="server">
                        <umbraco:Macro Alias="[Xmas]ShopConfirm" runat="server"></umbraco:Macro>
                    </form>
                </div>
            </div>
        </LoggedInTemplate>
    </asp:LoginView>
</asp:Content>

<asp:Content ContentPlaceHolderID="cphAuthenticationPane" runat="server">
    <asp:LoginView runat="server" ID="lview12">
        <LoggedInTemplate>
            <form runat="server">
                <asp:LoginStatus ID="lslougout" runat="server" Style="float: right; color: #003263; text-decoration: none;" text="Logout"></asp:LoginStatus>
            </form>
        </LoggedInTemplate>
    </asp:LoginView>
</asp:Content>

你可以看到我有两个表单标签,但都是单独的而不是嵌套的。我仍然收到错误

A page can have only one server-side Form tag.

任何人都可以建议我一个解决方案。当我尝试删除其中一个表单时,它抛出的错误元素必须在表单标记内,并且当我在错误上方添加表单时。

4

3 回答 3

1

一种解决方案是将登录信息放在单独的页面上。您还可以考虑使用 iframe。

于 2013-11-04T04:54:14.917 回答
1

使用以下教程设置两个表单标签,并能够根据需要打开和关闭它们:

http://jerschneid.blogspot.com/2007/03/hide-form-tag-but-leave-content.html

于 2013-11-04T05:06:45.850 回答
0

此错误是由于使用了多个

<form runnat="server">

标签。删除表单标签之一。

访问此链接会更清楚

于 2015-05-27T18:09:36.517 回答