【问题标题】:Visual Studios will not let me add multiple Text boxes in ASP.NETVisual Studios 不允许我在 ASP.NET 中添加多个文本框
【发布时间】:2017-11-12 04:44:29
【问题描述】:

我目前正在为学校做一个小项目。我的母版页上有一个搜索栏(作为文本框和一个按钮制作),它显示在我的内容页面上。我现在需要另外 2 个文本框来捕获信息,但是每当我尝试添加一个时,它都会更改现有文本框的 ID,并且不会添加新文本框。如果我尝试添加另一个,它会做同样的事情。我什至尝试添加一个表单,它仍然更改了我的搜索栏(文本框)的 ID,没有添加任何新内容,并将我的“搜索”按钮的值更改为我在表单的提交按钮中输入的文本。有什么办法可以解决这个问题,还是我只限于每页一个文本框?

我目前正在处理的页面的简要说明。

<%@ Page Title="" Language="C#" MasterPageFile="~/Site.Master" AutoEventWireup="true" CodeBehind="CheckDates.aspx.cs" Inherits="Reservation1.CheckReservations" %>
<asp:Content ID="Content1" ContentPlaceHolderID="MainContent" runat="server">
    <body>
    <form method="post" action="Mainpage.aspx">
        <input type="text" name="CheckInDate" value="Check in Date">
        <input type="text" name="CheckOutDate" value="CheckOutDate">
        <input onClick="window.location.href='Mainpage.aspx'" type="submit" value="Check Availibility">
        </form>
        </body>
</asp:Content>

母版页中的搜索栏位

    <asp:Button ID="SiteSearchButton" runat="server" Text="Search" OnClick="SiteSearchButton_Click" />



<asp:TextBox ID="SiteSearchBox" runat="server"></asp:TextBox>
    <a href="Mainpage.aspx" style="font-size:15px; color:white; padding-left:200px; padding-right:30px; padding-top:45px;

【问题讨论】:

  • 您是如何尝试添加新文本框的?来自设计器还是通过更改 aspx 文件中的代码?
  • 两种方法我都试过了。两者都不断有同样的问题。即使我将表单放入代码中,它也会使我的第二个文本框中的值出现在我创建的搜索栏中,并且也更改了按钮的文本。我正在使用 Visual Studio 2015
  • 你能分享一下 aspx 的代码,并指出你想在哪里添加文本框以及一些例子会发生什么?
  • 我从我目前正在处理的页面中添加了一些小片段,以及包含母版页中搜索栏的片段。即使在设计模式下,如果我将一个新文本框拖到我的页面中,它也会捕捉到我当前用作搜索栏的文本栏,并更改其上的 id。如果我移动那个栏,事实证明我实际上是在移动我的搜索栏,它将不再位于它应该在的位置。

标签: c# asp.net webforms textbox


【解决方案1】:

不确定您指的是什么(样式或实际代码),我已经有一段时间没有使用 WebForms

提醒:已经有一个服务器端form 包含所有您在WebForms 中的Content 页面(它在母版页中定义)。

  • 所以你在上面的代码中的第一个问题是你嵌套了&lt;forms&gt;(你不能)。这不是“ASP.Net”,而是HTML spec

  • 节省时间并遵循 WebForms 约定。使用 Button.PostbackUrl 而不是 html input 字段,这是您不必要地混入的 - 并不是说​​您不能,但没有理由在上面的代码中。

  • 最后,如果您依赖 Visual Studio designer,请不要。这不是一个好的所见即所得工具 - 从来没有,永远不会。 Visual Studio 主要是一个开发工具——它尝试帮助设计,但实际上并没有。

    在浏览器中运行您的代码并View Source 以查看呈现的 所有代码的输出。您将看到所有代码最终成为的原始 HTML - 并有望指导您确定问题的真正所在。

Hth.

【讨论】:

  • 我同意你的观点,我完全使用了设计模式。但老实说,我下载了 Visual Studio 2017,问题似乎自行解决了。我不知道真正的根本问题是什么。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2020-09-01
  • 1970-01-01
  • 2011-05-07
  • 2010-10-25
  • 2021-02-06
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多