点按钮就刷新页面咋回事
点按钮就刷新页面怎么回事啊HTML codeasp:Button IDaddmore runatserver Text加 onclickaddmo
点按钮就刷新页面怎么回事啊
HTML code<asp:Button ID="addmore" runat="server" Text="加" onclick="addmore_Click" />
C# codeint fileID = 2; protected void addmore_Click(object sender, EventArgs e) { fileID++; }
怎么老显示2啊,如何显示3啊
[解决办法] public int fileID
{
get { return (ViewState["flid"] == null) ? 2 : Convert.ToInt32(ViewState["flid"].ToString()); }
set { ViewState["flid"] = value; }
}
protected void addmore_Click(object sender, EventArgs e)
{
fileID++;
}
用viewstate来定义变量就可以保存状态了,因为按钮点击后页面回发,导致你上面代码中的fileID被重新赋值。
[解决办法]asp.net的变量是没有缓存的(不像Winform有一个地址来缓存),页面回传后就重新读取初始值了。保存变量的状态,可以用WiewState,Session,Cache,Cookie,Application以及静态变量(Static修饰)等来保存,看你这个变量的使用范围。
[解决办法] 点击按钮发生回传事件 fileID 初始值始终是2 .
int fileID = 2;
protected void addmore_Click(object sender, EventArgs e)
{
if (ViewState["FileID"] != null)
{
fileID =Convert.ToInt32( ViewState["FileID"].ToString());
}
fileID++;
ViewState["FileID"] = fileID.ToString();
}