如果我自己不写服务器端验证代码的话,
验证控件是不是用的都是客户端脚本验证?但是:
刚一本书上说,页面上ClientTarget="DownLevel"
这个时候不会生成任何客户端脚本,所有的验证在服务器端执行"所有的验证在服务器端执行"——什么意思?
我自己没有写服务器端验证代码,它自己会验证么?
怎么实现的?谢谢了

解决方案 »

  1.   

    所有.NET提供的验证控件都是在服务器段验证的,无论你写不写代码,只要用了验证控件,就一定会在服务器段进行验证
    相反,客户端脚本验证是可选的,由EnableClientScript这个属性决定,设置为true启用客户端脚本验证,设置为false不进行脚本验证。但无论如何设置,服务器段验证都是必须的,除非不用验证控件。用ClientTarget这个属性来控制是否生成客户端脚本不太合适,应该用EnableClientScript这个属性PS:你看得这是哪本书?
      

  2.   

    也就是说如果客户端也验证,也验证控件就是进行两次重复验证了?服务器端的验证它是怎么实现的啊?好像很少有书提到啊
    有什么资料讲这个的么?我google了一下没找到我刚看的书是,那个wrox系列的professional asp.net server controls高级编程
      

  3.   

    启用了客户端验证的确总共进行了两次验证,一次客户端,一次服务器端每个验证控件在创建的时候都会自动在Page.Validators中进行注册,调用Page.Validate()的时候会调用每一个Validator的Validate方法进行验证
    页面加载的时候应该会自动调用这个方法,可我不清楚具体是什么时候进行的验证,哪位知道也麻烦一下告诉我。
      

  4.   

    刚试了一下我把验证控件的display="none"
    最后用了一个ValidationSummary如果客户端验证禁掉了,那个ValidationSummary就没用了