i++在页面加载期间保持递增
本文关键字:加载 i++ | 更新日期: 2023-09-27 18:12:22
i++在每次重新加载页面时都保持递增。它应该只增加当我触发按钮,但我发现,在页面重新加载它也增加。我做了!IsPostBack
,但我仍然遇到这个问题。
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
cart_number();
}
}
private static int i;
private void cart_number()
{
lbl_cart_number.Text = i++.ToString();
}
protected void Button1_Click(object sender, EventArgs e)
{
cart_number();
}
当您重新加载页面时,这意味着它不是IsPostBack
。你应该从你的Page_Load
中去掉cart_number();
。Page_Load
将在每次浏览器和web服务器之间有交互时触发。
从'Page_Load'中删除cart_number()
方法调用。不需要在Page_Load
上调用该方法。为什么要从Page_Load()
调用呢?
试试这个:
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
cart_number("1");
}
}
private static int i;
private void cart_number(string flag)
{
int lbl=0;
lbl =int.Parse(lbl_cart_number.Text);
if(flag!="1"){
i=lbl;
if(i>=0){
lbl_cart_number.Text =( i+1).ToString();
}
}
else
{
lbl_cart_number.Text ="0";
}
}
protected void Button1_Click(object sender, EventArgs e)
{
cart_number("2");
}