在使用asp.net的验证控件时,发现是客户端和服务器端都验证的,但参看HTML SOURCE的时候,发现加载两个js类型文件,如下:
script src="/WebResource.axd?d=_A4lOo3AoZw_KQs8-3TTnA2&amp;t=633254652371875000" type="text/javascript"></script>
<script src="/WebResource.axd?d=4Zeayub0niYuB3H1uOQJLjPKKtNi2KyKa4qPDaxdQRs1&amp;t=633254652371875000" type="text/javascript"></script>疑问:
1\,页面在加载了这两个js文件,还有在html页中生成了一大堆js代码,是不是对页面打开速度及程序执行效率上有影响?
2\,客户端禁用javascript时,当必填字段没有填写时,验证还是有效(推测可能是服务器端立即验证了),但我这时并没有post页面,莫非验证有类似于ajax异步的效果?
3\,我想自己写javascript验证,但客户端完全可以绕过这个验证,提效非法代码,如何模拟asp.net验证控件写一个验证(当客户端验证失效时在提效页面之前在服务器端验证,即asp.net验证控件效果)?烦请提供一个简单的示例代码!!

解决方案 »

  1.   

    ajax也是基于javascript的,把活动脚本禁用后将不会再验证,asp.net验证控件原理也是一样
      

  2.   

    1.页面加载的东西越少,页面打开的就越快。不过基于现在的网络,两个js文件影响并不大。2.javascript禁用,是不能发生ajax的申请验证的。3. 在不使用验证控件的时候,都是在客户端验证,并在后台也写验证代码。
      

  3.   

    1.影响是有的,但影响不大的  因为文件本身不大
    2.禁用了客户端是不能验证的
    3.可以。其实你写一个本地验证,再POST后再在服务器验证一次就实现同样的效果了
      

  4.   

    验证控件在服务端有个属性bool 的
    来进行再服务端的验证.net的验证控件是两层的客户端一次,服务端一次
    你在服务端判断一下属性应该,不用再自己写代码验证了应该
      

  5.   

    这样的 PostBack 的效率是可想而知的...所以,这样的,还是自己写AJAX代码会比较好一些..机器生成代码,提高开发效率.牺牲的是性能.....
      

  6.   


     客户端 javascript 验证,服务器端 错误处理
     如果客户端 javascript 禁用,服务器端 错误处理就会抱错