首页 新闻 会员 周边

用asp.net WebForm做一个用户注册,怎样做到前后台校验用户输入内容的合法性?

0
悬赏园豆:10 [待解决问题]

用asp.net WebForm做一个用户注册页面,怎样做到前后校验用户输入内容的合法性?

问题补充:

前台可以用JS来校验,但是如果用户禁用掉JS脚本,那么后台怎么来校验并在原注册页面上返回相应的错误信息呢?

西夏普砖家的主页 西夏普砖家 | 初学一级 | 园豆:183
提问于:2012-09-25 01:43
< >
分享
所有回答(7)
0

用户点击“注册”按钮时,在后台事件处理函数中编写逻辑。验证成功,则进行“注册”并将用户跳转到其它页面;验证失败,只要没有跳转语句,如:Response.Redirect(),一般都是留在原来页面,只是产生一次PostBack,用户可继续操作,直至成功验证。错误信息可以在页面放一个Label,设置为红色,验证失败后将提示输出。

 

至于WebForm如何加按钮的事件处理程序,这个是基础,可以找网上的资料或MSDN。

ERic Poon | 园豆:261 (菜鸟二级) | 2012-09-25 02:19
0

给你个例子,比如最常用的邮箱验证

<input type="text" id="txtEmail" maxlength="50" runat="server" />

<div id="txtEmail2" runat="server" style="display:none;">Please enter your email address.</div>

前台验证:

var regemail = /^\w+([-+.']\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$/;
                var regemailflag = regemail.test($.trim($('#txtEmail').val()));
                if (ValEmpty($('#txtEmail').val())) {
                    $('#txtEmail2').html('Please enter your email address.');
                    $('#txtEmail2').css('display', 'inline');
                }
                else if (regemailflag == false) {
                    $('#txtEmail2').html('Please enter a valid email address.');
                    $('#txtEmail2').css('display', 'inline');
                }

后台验证:

Regex mail = new Regex("^\\w+([-+.']\\w+)*@\\w+([-.]\\w+)*\\.\\w+([-.]\\w+)*$");
            if (txtEmail.Value.Trim() == string.Empty)
            {
                txtEmail2.Attributes.CssStyle.Add("display", "inline");
                txtEmail2.InnerHtml = "Please enter your email address.";
            }
            if (!mail.IsMatch(txtEmail.Value.Trim()))
            {
                txtEmail2.Attributes.CssStyle.Add("display", "inline");
                txtEmail2.InnerHtml = "Please enter a valid email address.";
            }

田林九村 | 园豆:2367 (老鸟四级) | 2012-09-25 08:03
0

我通常用ASP.NET Validation Controls: http://msdn.microsoft.com/en-us/library/debza5t0(v=vs.100).aspx

Joe Hou | 园豆:265 (菜鸟二级) | 2012-09-25 08:38
0

使用vs里自带的验证就可以实现

jason2013 | 园豆:1998 (小虾三级) | 2012-09-25 10:03
0

用验证控件,然后在登录里面写代码

code_dream | 园豆:141 (初学一级) | 2012-09-25 10:11
0

1、拿到 用户名 username 密码 password

2、根据需求,对以上2个字符串进行判断,最好做去空格,统一大小写工作

3、仍错误,或者提示登录成功

mouu | 园豆:111 (初学一级) | 2012-09-25 10:45
0

简单的很,你在你要显示验证提示的地方放一个label,在后台验证出错的时间,给label赋值,让它可见,不就行了。如果禁用js前台是没有办法验证的,只能依靠服务端。

空明流光 | 园豆:106 (初学一级) | 2012-09-25 16:57
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册