【问题标题】:Using multiple forms, submit buttons on an ASP.NET web forms page使用多个表单,在 ASP.NET Web 表单页面上提交按钮
【发布时间】:2012-08-30 14:24:36
【问题描述】:

我在同一页面中有 3 个不同的提交按钮(登录、搜索、插入),我想要找到让这 3 个按钮在我按下它们时执行不同操作的最佳方法,或者我在按下回车键时我正要按他们。 从我的照片中可以看出,当我按下 Log In 时,插入也被按下,因为我的母版页中有一个 global form

我尝试使用不同的表单,但我不能,因为我需要它们拥有runat="server",而这对于页面来说是不可能的。

我使用 asp Texboxes:

<asp:TextBox class="text-input" ID="txtLoginEmail" runat="server"
Height="15px" Width="130px"></asp:TextBox>

和asp按钮:

<asp:Button class="submit google-button" ID="btnLogin" onclick="btnLogin_Click" 

runat="server" Text="Log in" />

除了我的搜索按钮是链接按钮:

<asp:LinkButton ID="searchLink" runat="server" onclick="searchLink_Click">Search</asp:LinkButton>

【问题讨论】:

  • 检查他们中的哪些人进行了回发。 (发件人参数)。除此之外,看看 Model View Presenter。这是使用网络表单的好方法

标签: c# javascript jquery


【解决方案1】:

您可以使用Validation Groups 在特定按钮单击时仅对所需的文本框进行验证。然后在具体按钮的事件处理程序中,您可以执行特定的逻辑。

【讨论】:

  • 您可以在大多数类似情况下使用CausesValidation=false,但这里似乎每个按钮都有自己的一组验证,因此组确实是正确的解决方案。
  • 我需要更多,我还需要长度检查和equalsTo检查(用于确认密码)。
  • 您可以使用正则表达式验证器检查字符串长度(例如 ^[\w\s]{1,50}$)。对于等于,您可以使用 CompareValidator (msdn.microsoft.com/en-us/library/…)
  • 还有一件事,我如何检查电子邮件,如果它是有效的。
猜你喜欢
  • 2014-09-28
  • 2018-08-25
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-08-11
  • 2012-01-23
相关资源
最近更新 更多