ASP.NET验证控件与客户端脚本的一点小冲突

本文介绍了一个简单的ASP.NET页面,该页面包含一个Email输入框及一个提交按钮。文章详细阐述了如何使用RequiredFieldValidator和RegularExpressionValidator验证Email的有效性,并讨论了OnClientClick事件中自定义脚本对验证的影响。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

 

  一个简单的ASP.NET页面,一个Email输入框加一个提交按钮(asp:button),所要做的就是通过RequiredFieldValidator和RegularExpressionValidator来验证输入内容是否符合Email的要求,并通过提交按钮来执行提交操作。


  这里要说的问题就是,如果仅仅是这样的话,那么当我们点击提交按钮时,如果输入的内容不符合要求的话,控件会直接显示错误信息,页面不会重新刷新,其实控件是自己生成了一系列的脚本来进行的判断,和我们自己写javascript是一个道理。如果我们给按钮添加OnClientClick事件,并自己添加一些脚本的话,则验证控件的判断依旧会起作用,但是至于是否阻止按钮的提交就全依赖于OnClientClick事件中返回的内容是false还是true,同时页面会postback并执行后台代码,这也就说明一个问题,其实所谓的验证控件也是把自己的脚本绑到了按钮上,并控制其提交的时机,如果我们自己编写客户端脚本的话,就要负起判定是否提交的全责,而不能将责任全寄托到服务器端控件上。

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值