我的问题是我在Update Panel中封装了一组控件。第一次页面运行时,我的 Mutual()方法被调用。当我点击Button1_click时, row [i] 的当前值存储在数据库中,但当我点击Button2增加row [i]的第i个值并调用Mutual(i)时,它不会不会被叫......
请告诉我我错在哪里或者我错过了什么?为什么会这样?
protected void Page_Load(object sender, EventArgs e)
{
if(!Page.IsPostBack)
{
//Access values from database and store into DataRow[] row
i=0;
ViewState["i"] = i;
Mutual(i);
}
}
protected void Mutual(int i)
{
//display row[i]
}
protected void Button1_click(...)
{
//store current row[i] value into database
}
protected void Button2_click(....)
{
i = (int)ViewState["i"];
i++;
ViewState["i"] = i;
Mutual(i);
}
答案 0 :(得分:0)
如果你显示aspx代码会更好.....将控件放在更新面板中时遇到的典型问题是几个解决方案
1)您可以使用触发器通过在更新面板中放置触发器来触发服务器端事件
<asp:UpdatePanel>
<Triggers>
<asp:AsyncPostBackTrigger ControlID="Button2" EventName="Click" />
</Triggers>
</asp:UpdatePanel>
2)使用jquery ajax函数来调用你的方法。 ///但是,如果没有其他工作