我目前正在为学校开展一个小项目。我的母版页上有一个搜索栏(作为文本框和按钮),显示在我的内容页面上。我需要另外两个文本框来捕获信息,但是当我尝试添加一个文本框时,它会更改现有文本框的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;
答案 0 :(得分:0)
不确定您指的是什么(样式或实际代码),自从我使用WebForms
提醒:已经有一个服务器端form
在WebForms中包含所有您的Content
页面(它在主页面中定义)。
因此,您在上面的代码中的第一个问题是您正在嵌套<forms>
(您可以&#t; t)。这不是一个&#34; ASP.Net&#34;事情,那是HTML spec。
节省时间并使用WebForms约定。使用Button.PostbackUrl
代替您不必要地混合的html input
字段 - 不要说你可以但是没有理由进入你上面的代码。
最后,如果您依赖Visual Studio designer
,只需不要。它不是一个好的WYSIWYG工具 - 永远不会,永远不会。 Visual Studio主要是一个开发人员工具 - 它尝试来帮助设计,但是,实际上并非如此。
在浏览器中运行您的代码并View Source
查看呈现
输出所有代码。您将看到所有代码最终的原始HTML - 并且应该指导您确定问题的真正原因。
H个。