随笔 - 96  文章 - 0  评论 - 682  阅读 - 22万

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

 

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


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

posted on   酸甜西瓜  阅读(1321)  评论(0编辑  收藏  举报
编辑推荐:
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
阅读排行:
· 周边上新:园子的第一款马克杯温暖上架
· Open-Sora 2.0 重磅开源!
· .NET周刊【3月第1期 2025-03-02】
· 分享 3 个 .NET 开源的文件压缩处理库,助力快速实现文件压缩解压功能!
· [AI/GPT/综述] AI Agent的设计模式综述
< 2010年2月 >
31 1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 1 2 3 4 5 6
7 8 9 10 11 12 13

点击右上角即可分享
微信分享提示