asp.net验证表单与javascript验证表单都可以验证表单,如何选择呢?

问题描述:

asp.net验证表单与javascript验证表单都可以验证表单,孰优孰劣,如何抉择?

c#表单验证控件可以同时实现客户端验证和后台验证功能,但是他只能验证服务器控件,
客户端的表单不能验证,因此如果你要使用post来进行form提交的话就得自己构造post数据有点麻烦。
我的建议是如果你使用的是asp.net控件并且利用postback 来触发表单提交的话(就是直接在按钮上添加后台事件.net代码)可以直接用.net表单验证控件
并打开客户端验证(默认好像是打开的)。
如果你是要用post/get方式提交表单(这样减少了viewstate等,访问量大的网站推荐)那还是用javascript验证表单。

此外,js验证是在客户端执行,是可以被修改和绕过的,因此,net代码在接收表单的时候还要进行验证。否则假设客户把浏览器的js功能禁用了你的验证功能就会失效。

当然,一句句js写很麻烦,建议用jq验证插件。有一个叫jquery.validate的你可以百度下看看。
使用上有什么问题可以联系我 qq476020042,欢迎一起交流

JS验证,其灵活、适用的性能深得人们的喜好。

后台程序验证

尽管客户端验证比较灵活,但是其局限性也很明显,服务器端验证必不可少。
(1) 安全性 如若恶意攻击者,将客户端页面的验证控件和JS验证全部抹去,而服务器端又没有做出有效的验证处理,必将给攻击者带来很大的漏洞,其后果不堪设想。
(2) 客户端验证的局限性,比如用户注册,需要判定用户名是否存在,这个需要从数据库查询进行判定.
(3) 功能强大 各种验证功能都可以在这里实现。
缺点:增加服务器端负担