gridview清除了hiddenfields上的值。因此它不能用於存儲我的div隱藏或不隱藏的值。
我解決了它通過創建一個div「divhidden」,添加hiddenvalues,可用於設置我的JavaScript編輯的可見性。
divs隱藏的信息現在存儲在這些隱藏值的回發之間。
aspx-page: hiddenDiv = new System.Web.UI.HtmlControls.HtmlGenericControl(「DIV」); hiddenDiv.ID =「hiddenValuesDiv」; PlanningForm.Controls.Add(hiddenDiv);
Label weekLabel = row.FindControl("weeknr") as Label;
if (weekLabel != null && PlanningForm.FindControl("visiblediv" + weekLabel.Text) == null) {
HiddenField divvisible = new HiddenField();
divvisible.ID = "visiblediv" + weekLabel.Text;
//Open the first two divs
if (!Page.IsPostBack) {
if(openDivCount < 2)
divvisible.Value = "block";
openDivCount++;
}
hiddenDiv.Controls.Add(divvisible);
}
和JavaScript代碼:
function expandcollapse(obj, row) {
var hidden = document.getElementById(GetClientId('visible' + obj));
var warningonweek = weekrow.getElementsByTagName('td')[0].getElementsByTagName('img')
if (div.style.display == "none") {
div.style.display = "block";
....
}
else {
div.style.display = "none";
....
}
}