asp.net防止惡意刷新或多次點擊按鈕的方法

public void page_load(Object obj,EventArgs e) 

  btn.Attributes.Add("onclick","state=true;"); 
  StringBuilder sb=new StringBuilder(); 
  sb.Append("if (!state) return;"); 
  sb.Append("var button=document.getElementById(’btn’);"); 
  sb.Append("button.value=’Please Wait...’;"); 
  sb.Append("document.body.style.cursor=’wait’;"); 
  sb.Append("button.disabled=true;"); 
  string strScript="<script>"; 
  strScript=strScript +"var state=false;"; 
  //將函數綁定到頁面的onbeforeunload事件: 
  strScript=strScript +"window.attachEvent(’onbeforeunload’,function(){" +sb.ToString()+ "});"; 
  strScript=strScript +"</"+"script>"; 
  Page.RegisterStartupScript("onbeforeunload",strScript); 

    protected void aa_Click(object sender, EventArgs e)
    {
        //模擬長時間的按鈕處理 
        System.Threading.Thread.Sleep(2000);
        Response.Write("<script>alert(’bbbbbb!!’);" + "</" + "script>"); 
    }

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章