您的位置:首页 > 移动开发 > Objective-C

怎样防止浏览器刷新重复提交数据?

2005-02-05 00:10 561 查看
第一种方法:

不要用WEB控件中的BUTTON用HTML中的BUTTON可以解决这个问题:
具体如下:
在:HTML中,定义这样一个BUTTON
-------------------------
<input type="button" value="mybutton" onclick="this.disabled=true;" runat="server" id="mybutton" name="mybutton">
--------------------------------
然后在CODEBEHIND中,使用ServerClick事件,即:
    Private Sub mybutton_ServerClick(ByVal sender As Object, ByVal e As System.EventArgs) Handles mybutton.ServerClick
.....
    End Sub
----------------------------------
注意,在CODEBEHIND中,还必须有以下这句定义按钮的句子
   Protected WithEvents mybutton As System.Web.UI.HtmlControls.HtmlInputButton

下面是测试的代码,你可以自己试试:
 Private Sub Page_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
        '在此处放置初始化页的用户代码
        If Not IsPostBack Then
            Dim conn As New SqlConnection("server=localhost;user id=sa;password=ycm119;database=pubs;")
            Dim dad As New SqlDataAdapter("Select  * from employee", conn)
            Dim dst As New DataSet
            dad.Fill(dst, "employee")
            DataGrid1.DataSource = dst.Tables("employee")
            DataGrid1.DataBind()
        End If

    End Sub

    Private Sub mybutton_ServerClick(ByVal sender As Object, ByVal e As System.EventArgs) Handles mybutton.ServerClick
        DataGrid1.DataSource = ""
        DataGrid1.DataBind()
    End Sub
--------------------------------------------------------------------------------------------------------
http://community.csdn.net/Expert/topic/3344/3344371.xml?temp=.8338129#top

第二种方法:

在按钮中写
void Button1_Click(object sender, System.EventArgs e)
{
 // ....
 Response.Write("<script language='JavaScript'>alert('提交成功!');window.location='WebForm1.aspx';</script>");
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息