我们的项目只做了前端验证,使用jQuery.validate.js插件,详细使用见:jQuery.validate.js使用
这种方式只有假设用户都是小白的情况下可行,但凡会点web知识的人,都可以轻易的绕过验证。
客户端的验证只是为了交互的友好,我们并不能依赖。
凡是要持久化到数据库的数据,就不要相信用户的输入,必须在服务端进行验证。
关于服务端验证,有几种方式,见:http://www.cnblogs.com/4littleProgrammer/p/6143362.html
使用asp.net mvc开发的话,建议使用数据注解进行验证。服务端控制器增加代码:
[HttpPost] public JsonResult Method(Model model) { if (!ModelState.IsValid) { } ... }
结合ModelState使用,使用ajax提交数据,方法见:http://stackoverflow.com/questions/7287412/jquery-validate-asp-net-mvc-modelstate-errors-async-post
我们就可以实现常见的一些数据验证了。
当然,我们可以自定义验证规则,使用过滤器验证;
使用第三方类库,如:fluentValidator;
项目使用Entity Framework,使用fluent api定义验证
总之,要明确的是:服务端验证是必要的。