【问题标题】:ASP.net Contact us pageASP.net 联系我们页面
【发布时间】:2011-02-11 01:32:08
【问题描述】:

这是一个非常简单的问题,因为我是 asp.net 的新手,我正在尝试开发与我们联系的页面,但出现以下错误。

“'TextBox' 类型的控件'ContentPlaceHolder1_nameBox' 必须放置在带有runat=server 的表单标签内”

以下是我目前对该页面的代码。

<%@ Page Title="" Language="C#" MasterPageFile="~/Site1.Master" AutoEventWireup="true" CodeBehind="ContactUs.aspx.cs" Inherits="Craigavon_Aquatics.ContactUs" %>
<asp:Content ID="Content1" ContentPlaceHolderID="head" runat="server">
<h2>
    Contact Us</h2>
<p>
    Please fill in the form below to contact us.</p>

<p>
    &nbsp;</p>

</asp:Content>
<asp:Content ID="Content2" ContentPlaceHolderID="ContentPlaceHolder1" runat="server">
<table style="width: 100%">
    <tr>
        <td>
            Name: (Required)</td>
    </tr>
    <tr>
        <td>
<asp:TextBox ID="nameBox" runat="server" Width="278px"></asp:TextBox>                
        </td>
    </tr>
    <tr>
        <td>
            Email: (Required)</td>
    </tr>
    <tr>
        <td>

        </td>
    </tr>
</table>
</asp:Content>

【问题讨论】:

    标签: c# asp.net css


    【解决方案1】:

    在您的母版页中围绕内容占位符放置一个包装器&lt;form runat="Server"&gt;,或者在该页面上的&lt;asp:Content&gt; 标记内添加一个围绕您当前内容的&lt;form runat="server"&gt;

    Site1.Master

    <form runat="server">
      <asp:ContentPlaceHolder ...></asp:ContentPlaceHolder>
    </form>
    

    -或-

    ContactUs.aspx

    <asp:Content ...>
      <form runat="server">
        ...existing HTML code...
      </form>
    </asp:Content>
    

    【讨论】:

      【解决方案2】:

      找到 ID 为 'ContentPlaceHolder1_nameBox' 的控件并将其放置在 .aspx 的表单 /form 标记之间以消除错误。 ASP .Net Server 控件必须在 Form 标签内。

      【讨论】:

        【解决方案3】:

        您需要 &lt;form runat="server"&gt; // 您的代码、控件 .. &lt;/form&gt; 标记来包围您的代码。您的母版页中可能缺少此内容

        【讨论】:

          【解决方案4】:

          您必须检查并确保您在母版页上声明了一个表单。既然我看不到这一点,那么如果出现该错误,我将不得不假设没有。

          【讨论】:

            【解决方案5】:

            最简单的解决方案是将正文包裹在 MasterPage 中。
            但你也可以像这样覆盖它。

            public override void VerifyRenderingInServerForm(Control control) 
            {
                return;
            }
            

            【讨论】:

              【解决方案6】:

              母版页中的所有控件都应位于 &lt;form&gt;...&lt;/form&gt; 标记内,包括内容占位符。

              这与“联系页面”无关。这是一般 ASP.NET 页面的基础。

              【讨论】:

                猜你喜欢
                • 1970-01-01
                • 1970-01-01
                • 1970-01-01
                • 1970-01-01
                • 1970-01-01
                • 2017-01-18
                • 1970-01-01
                • 1970-01-01
                • 1970-01-01
                相关资源
                最近更新 更多