如果用户点击button很多下的话
注册的时候,是不是会数据库出现多条相同记录呢?
怎么防止重复提交呢

解决方案 »

  1.   

    如果要防止这种情况的话,点击以后将button的enable设为false
      

  2.   

    用户注册时,写入数据库时你肯定判断了用户名是否已经存在,当第二次提交的时候肯定就写入不了数据啦.
    此外cookie,session都可以.
      

  3.   


    让按钮不可以点击,enable为false   你试试
      

  4.   

    http://topic.csdn.net/u/20090325/09/76b2590b-f4b8-420f-bee7-e4fdf77d78c6.html这个贴子讨论了!!
      

  5.   

    基本都是用javascript控件!!当按钮被点击时,把值设置为false!用javascript提交!要么就直接重定向!
      

  6.   

      直接ajax 注册  ,提交后 ,弹出一个 对话框 ,注册成功 ,谁还重复提交啊 
      

  7.   

    用cookie  当注册后在本地记录一个cookie
    设置他的有效性  然后  进行判断
    如果按楼上所有将btn enable变为false
    刷新将还是
    自己想想  看看要什么效果  那样也行
      

  8.   

    Cs中:   
        this.btnOK.Attributes.Add("onclick", ClientScript.GetPostBackEventReference(btnOK, "Click") + ";this.disabled=true; this.value='提交中...';");
    提交按钮中..
     System.Threading.Thread.Sleep(2000);
            ClientScript.RegisterStartupScript(GetType(), "btnCommit", "alert('提交成功!!!');",  true);
    javascript: ctrl+Enter提交:
    if(event.ctrlKey&&event.keyCode==13)
    {
    document.getElementById("Button1").click();
    document.getElementById("Button1").disabled=true;
    return false;
    }
      

  9.   

    如果 设为false  每提交一次 页面就会刷新一次,页面会从新加载,那么按钮的enable 属性又会变为true,
     你的目的是 为了防止重复提交还是 防止数据重复,如果是防止数据重复,3楼的方法可以,建议用Ajax 进行验证数据是否重复!
      

  10.   

    用 Ajax  比较好  现在一般都用这个
      

  11.   

    用ajax吧。
    重复的不让注册是业务逻辑问题。
      

  12.   

    当然不会,注册的时候在逻辑层会判断用户名,邮箱等一些关键字,第二次同名注册会出现错误提示,用Ajax局部刷新可以马上就给出重名之类的提示,这个我们论坛注册时候经常能看到