asp.net(c#) 怎么避免刷新后 又触发了一次按钮事件

来源:百度知道 编辑:UC知道 时间:2024/05/27 13:24:44
protected void resultBtn_Click(object sender, ImageClickEventArgs e)
{

Response.Write("<script>window.open ('VoteResult.aspx','newwindow','height=500,width=600,top=0,left=0,toolbar=no,menubar=no,scrollbars=no, resizable=no,location=no, status=no');</script>");

}
上面是代码 在首页按查看投票按钮查看完投票结果后 关闭投票结果窗口 然后在首页刷新 就会出现重试和取消对话框
点重试后投票结果的窗口就弹出来了 重复了之前的操作 到底该怎么避免啊
大侠指点啊 谢谢

虽然在Page_Load事件中用IsPostBack判断下,然后将resultBtn_Click方法加入EventHandler中去可以实现,但是我不推荐这种方法

我觉得在前台用javascript就可以了,不必用.net控件,用简单的html表单控件就可了,比如:<input type="button" name="resultBtn" onclick="tc()" />

然后用javascript
<script type="text/javascript">
function tc()
{
window.open ('VoteResult.aspx','newwindow','height=500,width=600,top=0,left=0,toolbar=no,menubar=no,scrollbars=no, resizable=no,location=no, status=no');
}
</script>

ps:用asp.net不要滥用控件,有些问题可以在前台解决的就在前台.

看看 !~

提交后重新刷新本页.
就是在提交事件里最后加上
Response.Redirect(System.Web.HttpContext.Current.Request.ServerVariables["HTTP_REFERER"].ToString());
来重新刷新页.

写在Page_Load里

在Page_Load加上
if (!IsPostBack)
{
....OK
}

...不就是回发嘛。。。
page_load里面加上
if (!IsPostBack)
{
}
就可以啦