我是asp.net的新手。我的 login.aspx 页面有这一行:
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="Users.aspx.cs" %>
和我的 Users.aspx.cs 文件包含以下代码行:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Diagnostics;
public partial class Users : System.Web.UI.Page
{
protected void LoginButton_Click(object sender, EventArgs e)
{
if (Page.IsValid)
{
LoginButton.Text = "My form is valid!";
}
}
}
在 login.aspx 页面上,我正在使用
RequiredFieldValidator 和 的RegularExpressionValidator
验证电子邮件和密码字段。
现在,我必须确保验证完成并做更多的事情。但是,我的代码在这里并不友好;它并没有计算这两个功能中的任何一个。事实上,我觉得它甚至没有进入 .cs 页面。我知道我在这里犯了一些愚蠢的错误。 谢谢!
P.S。验证工作正常,它正确返回错误消息。
编辑:Login.aspx 页面如下所示:
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="Users.aspx.cs" %>
<div class="card text-white bg-info mb-3 toHide" id="loginBlock">
<div class="card-header"><b>Login To Pay Your Bills Online</b></div>
<div class="card-body">
<div class="form-group">
<label for="emailToLogin">Email address<b class="text-danger">*</b></label>
<asp:TextBox id="emailToLogin" ValidationGroup="Login" runat="server" placeholder="Enter email" CssClass="form-control" />
<asp:RequiredFieldValidator id="emailToLogin1" EnableClientScript="false" ValidationGroup="Login" CssClass="small text-danger" Display="Dynamic" runat="server" controltovalidate="emailToLogin" errormessage="Please enter your email!" />
</div>
<div class="form-group">
<label for="passwordToLogin">Password<b class="text-danger">*</b></label>
<asp:TextBox id="passwordToLogin" ValidationGroup="Login" TextMode="password" runat="server" placeholder="Password" CssClass="form-control" />
<asp:RequiredFieldValidator id="passwordToLogin1" EnableClientScript="false" ValidationGroup="Login" CssClass="small text-danger" Display="Dynamic" runat="server" controltovalidate="passwordToLogin" errormessage="Please enter your password!" />
</div>
<div>
</div>
<asp:Button id="LoginButton" ValidationGroup="Login" runat="server" OnClientClick="LoginButton_Click" Text="User Login" CssClass="btn btn-warning" />
</div>
</div>
答案 0 :(得分:1)
OnClick将在服务器端工作,OnClientClick将在控制传递给服务器之前在客户端执行。 因此,您需要定义OnClientClick函数ClientSide或将OnClientClick更改为OnClick。
https://msdn.microsoft.com/en-us/library/system.web.ui.webcontrols.button.onclientclick(VS.80).aspx