ASP.NET的BUTTON好像提交了两次?
[b]我刚学ASP.NET,今天做一个小实验,网页中只有一个button,代码很简单就是下面这样
public partial class test1 : System.Web.UI.Page
{
static int i;
protected void Page_Load(object sender, EventArgs e)
{
i++;
Response.Write(i.ToString());
}
protected void Button1_Click(object sender, EventArgs e)
{
Response.Redirect("test1.aspx");
}
}
然后运行的时候我点击button的话i就会每次加2,但是我刷新的话i就会加1.怎么回事呢?
没积分了,不好意思 。。。谢谢
------解决方案--------------------开始:i为0
执行Page_Load:i为1
单击按钮后
先执行Page_Load:i为2
再执行Button1_Click:重定向本页面
执行Page_Load:i为3
单击按钮后刷新页面,相当于重复前次操作(前次操作是重定向本页面,而不是单击按钮),所以只会执行Page_Load:i增1
------解决方案--------------------protected void Page_Load(object sender, EventArgs e)
{
i++;
Response.Write(i.ToString());
}
一开始 i+le 一次 你点击的时候 i又加了一次
if(!ispostback)
{
i++;
Response.Write(i.ToString());
}
这样 点击的时候 就不会再加了