1
我在Panel
中有一個radioButtonList
。該面板使用UpdatePanel
來更新面板。RadioButtonList在doPostBack之後不會改變 - ASP.NET JS C#
<asp:UpdatePanel ID="upnlTeacherDismissal" runat="server" UpdateMode="Conditional" OnLoad="tmrRefreshTeacher_OnTick">
<asp:Panel ID="pnlDismissalTeacher" runat="server"; color:White; width:100%;">
<asp:RadioButtonList ID="rbtnStatusDismissal" AutoPostBack="true"
runat="server" RepeatDirection="Horizontal" OnSelectedIndexChanged="rbtnStatusDismissal_OnSelectedIndexChanged" >
<asp:ListItem ID="id1" Text="In Class" Value="1" />
<asp:ListItem ID="id2" Text="Dismiss" Value="4" />
<asp:ListItem ID="id3" Text="Field Trip" Value="5" />
</asp:RadioButtonList>
在UpdatePanel刷新由JavaScript函數trigerred每5秒(我知道有從System.Class.UI
但出於某種原因,我不得不使用JS功能的定時器)。下面是刷新功能:
function refresh() {
//update teacher panel
__doPostBack('<%=upnlTeacherDismissal.UniqueID%>', '');
}
setInterval(refresh, 5000);
當doPostBack
,在後面的代碼,我想設置的單選按鈕值從數據庫中更新的價值,但沒有從用戶界面的任何變化(單選按鈕值仍然是1)。該程序將每5秒執行一次該功能(而不是從rbtnStatusDismissal_OnSelectedIndexChanged
)。
protected void tmrRefreshTeacher_OnTick(object sender, EventArgs e)
{
//... few lines to check the database if table changes
rbtnStatusDismissal.SelectedValue = (int)data.statusID;
//let's say (int)data.statusID equals 5
upnlTeacherDismissal.Update();
}
我試着調試和看到.SelectedValue已經被設置爲data.statusID的值(假設5)。但UI中的單選按鈕的值仍然等於1(而不是5)。 什麼是錯的,我該怎麼辦?
我已經添加了結束標籤當然,但它仍然不適合我。 – user2393874
您是否在updatepanel中添加了內容模板,並從更新面板中刪除onload .. @ user2393874 –
是的但仍然沒有變化,看起來像UI不會更新 – user2393874