有谁知道ASP.net防止页面刷新数据重复提交的方法,在网上搜了一把,都是页面跳转、禁用缓存、使用session与viewstate判断、msdn上的Ispagerefresh,这几种方法,处理msdn上的那种,感觉其他的都不适合大点的项目,可msdn的那种,自己试了几次,不能使用,把那个dll文件加进去,整个项目都变的乱套了,哪位大侠还有比较好的方法,小弟在此先谢过了

解决方案 »

  1.   

    你说的是form表单么?如果是的话,ajax或者iframe来实现都可以(具体操作网上一旦对,如ajax/iframe实现表单提交)不了解asp.net,不过网页技术都差不多
      

  2.   


    如果楼主的目的是:防止页面刷新数据重复提交!那么不管是哪个后台语言,ASP,PHP,。NET,我想做法都是一样的!加验证码!不输入验证码,你怎么刷新都不可能重复提交数据!
      

  3.   

    页面跳转实际上是最好事先,并且最经济的方式。验证码的方法虽然可行,但是并不是最好的,因为如果验证码部分写的不尽人意,结果就是达不到目的。实际上怎么做在于程序员自己来确定,本来如果你使用了大量.net自带的各种空间,你的页面的垃圾就多到让你不鞥忍受的地步。然后你又要这么折腾,结果不言而喻了。最好的办法还是使用传统的form进行相关提交,放置重复提交的办法,还是自动跳转(使用redirect进行,不要用JS进行)最方便经济实惠。而且获取前面url(提交前)的方法多种多样,实在是太过于方面了,咱就不多说啦。咱分析一下验证码方式的火电和最近现在比较多论坛的做法。验证码虽然可以达到2楼同学所说的目的,。但是不好的用户体验导致了这个方法最终被淘汰了。所以,实在不好意思,咱真的不是在打击你的积极性。现阶段,几乎所有仑田的回复,都是使用的iframe进行的镶嵌在帖子底部的方式进行。这样做的好处当然不言而喻了,在刷新的时候,你的提交栏的内容永远都是空白的,并不会提交任何一点点数据。然后,就是传说中的ajax登场,使得提交的时候,并不会触发页面完整更新,提交的内容都是那种隐形的数据流,这样也就保证了提交内容除非是点击触发,想当然尔不会产生楼主所说的问题了。以上。