bre*_*ine 4 c# asp.net viewstate webforms
我不太熟悉.NET,但是我想将一个简单的值(1到1000之间的数字,这是特定的高度div)保存到viewstate并在更新面板重新加载时检索它(在标记中)某处或使用javascript).最简单的方法是什么?
这个页面给了我以下代码:
string strColor;
if (Page.IsPostBack)
{
// Retrieve and display the property value.
strColor = (string)ViewState["color"];
Response.Write(strColor);
}
else
// Save the property value.
ViewState["color"] = "yellow";
Run Code Online (Sandbox Code Playgroud)
但是,我不清楚在何处或如何访问示例strColor.
由于这是在代码背后,Response.Write甚至会吐出那些代码?我尝试这段代码时找不到它.我如何使用javascript设置该值,而不是在后面的代码中设置它?
您可以简单地将div设置为服务器控件,如下所示:
<div id="yourdiv" runat="server" ...
Run Code Online (Sandbox Code Playgroud)
当页面回发时; 只需通过设置其属性来设置它的高度; 例如:
yourDiv.Attributes("style","height:"+height_read_from_ViewState+"px;");
Run Code Online (Sandbox Code Playgroud)
或者,您可以使用隐藏字段在客户端存储高度,并在服务器端读取隐藏字段的值以设置div的高度.
<asp:hiddenfield id="hdnHeight" runat="server" />
Run Code Online (Sandbox Code Playgroud)
您可以在Javascript中设置高度:
function setHeight(value)
{
document.getElementById('<%=hdnHeight.ClientID').value=value;
}
Run Code Online (Sandbox Code Playgroud)
并在邮件服务器端回复:
yourDiv.Attributes("style","height:"+hdnHeight.Value+"px;");
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
22432 次 |
| 最近记录: |