解决aspx控件回传消失的问题
来源:互联网 发布:淘宝卖家怎么优化宝贝 编辑:程序博客网 时间:2024/05/19 12:25
说实话,动态加载控件一直是一个让我很头疼很头疼的问题,也看了很多帖子文章,大多数都说在在回传之后的pageload中重新加载一遍控件,这没问题,可是如果我的控件就不是在页面载入的时候就加载的,是在点击一个button之后动态加载的怎么办?加一个viewstate标志,该加载的时候再重新加载,可是如果这个用户控件里面我之前输入的信息就全美了。不废话了,说方法。
其实实现起来那是相当的简单的,控件动态加载总是需要容器的,用tabel也好,用placeholder也好,实现方法就是把放置用户控件的容器,放在一个div里面,为引起回传的控件添加一个客户端属性,保存这个div的innerHTML,在页面加载的时候,再把这个div的inHTML读取出来就行了,下面是部分代码。
前台
<div id="divexam" style="width: 100px; height: 100px">
<uc1:test id="exam1" runat="server"></uc1:test>
</div>
<asp:Button id="Button1" runat="server" Text="交卷" OnClick="Button1_Click">
后台相关代码
protected void Page_Load(object sender, EventArgs e)
{
if (!Page.IsPostBack)
{
//为按钮1注册保存函数
Button1.Attributes.Add("onclick", "saveview()");
}
}
protected void Button1_Click(object sender, EventArgs e)
{
//do something
//调用读取函数
ScriptManager.RegisterClientScriptBlock(UpdatePanel1, UpdatePanel1.GetType(), "", "loadview()", true);
}
我这用的ajax.net 没用的情况吧调用读取函数改成RegisterStartupScript就行了
保存和读取的js代码
var hidhtml;
//保存状态
function loadview()
{
document.getElementById('divexam').innerHTML=hidhtml;
}
//读取状态
function saveview()
{
hidhtml=document.getElementById('divexam').innerHTML;
}
- 解决aspx控件回传消失的问题
- 解决aspx的一个问题
- aspx 页面与ascx用户控件传值的问题
- aspx 页面与ascx用户控件传值的问题
- aspx 页面与ascx用户控件传值的问题
- aspx 页面,master页面与ascx用户控件传值的问题,web用户控件调用.aspx页面...
- aspx中文乱码问题的解决
- 解决Dialog 消失,输入法不消失的问题
- 解决vtkWindowForm控件突然消失问题:动态加载vtkWindowForm
- 怎样解决Network Manager消失的问题
- 解决 Ubuntu NetworkManager 图标消失的问题
- 解决R文件消失的问题
- 解决控制器导航栏消失的问题
- ascx 解决消失问题
- 解决工具栏中消失了的dev控件工具栏
- 解决React Native中ScrollView中控件获得焦点及点击空白处键盘消失的问题
- 解决React Native中ScrollView中控件获得焦点及点击空白处键盘消失的问题
- aspx 页面,master页面与ascx用户控件传值的问题
- [文摘]美国军衔简表
- Flash安全策略解决方案
- 计算机术语英中繁简对照
- 实时检测管理员是否在线
- DIY无线网卡天线大集合
- 解决aspx控件回传消失的问题
- 数据挖掘系统知识点滴
- 一些很酷的.Net技巧
- 网络投简历的“歪”招儿图
- U盘的“低级格式化”
- 想的简单点
- asp.net打包安装
- CVS使用手册
- 夜 、未 央