日期:2014-05-17  浏览次数:20436 次

客户端validation和Ajax的次序问题
如果页面上有很多控件需要验证,有些验证是“纯客户端的”(如“不能为空”),有些验证是还“需要连接服务器端”的(如“该用户名已存在”),这通常使用Ajax技术实现。

我希望:
1. 先进行“纯客户端”的验证
  1.1 如果验证通过,才进行“需要连接服务器端”
  1.2 否则,不进行“需要连接服务器端”的验证

这样可以节约客户端和服务器端的往返。

我试过用UpdatePannel,Ajax Validtion Plugin,都没有实现这种效果。

请高手指教!


------解决方案--------------------
OnClientClick="return check()";
function check()
{}验证控件值,再使用xmlhttp获取相关数据
也可使用如jQuery formValidator
jQuery.validator.addMethod("userName", function(value, element) {
return this.optional(element) || /^[\u0391-\uFFE5\w]+$/.test(value); }, "用户名只能包括中文字、英文字母、数字和下划线");
...
------解决方案--------------------
验证控件默认是客户端验证的,服务端验证用Page.IsValid