全国统一热线:
028-86758058
18980748058
购买流程
付款方式
常见问题
在线提问
续租服务
购物车(
0
件)
用户名:
密 码:
记住
首 页
HOME
域名注册
DOMAIN
虚拟主机
WEB HOST
成品网站超市
AUTO Site
VPS主机
VPS SERVER
云 主 机
CLOUD HOST
租用托管
SERVER
海外主机
HK HOST
代理专区
AGENT
客服中心
SERVICE
站长教程
SERVICE
欢迎光临西部数据云计算中心,我们将竭诚为您提供最优质的服务!
中文域名
域名转入
域名转出
DNS管理
动态域名
获取域名证书
域名停放
域名过户
集群主机
双线主机
基本主机
港台主机
论坛主机
Linux主机
Vip合租主机
超G型主机
ASP.net主机
Java主机
智能建站主机
网店主机
美国主机
数据库
成品网站超市
智能建站主机
集群VPS主机
国内VPS主机
香港VPS主机
美国VPS主机
云主机介绍
云主机购买
服务器租用
主机托管
常见问题
香港主机
港台主机
美国主机
国内免备案
步骤流程
代理级别
代理合同
代理模式
代理优势
在线申请
产品列表
常见问题
代理商分布图
常见问题
有问必答
跟踪提问
购买流程
产品价格
付款方式
常用软件
网站备案
续租服务
汇款确认
相关文档
联系我们
域名资讯
主机资讯
行业动态
网页制作
php教程
mysql教程
域名资讯
云计算资讯
网络编程
您当前的位置:
首页
>
网络编程
>
Net教程
asp.net通过Ajax UpdatePanel回传后滚动条位置变更解决方法
时间:2015-01-29 来源:互联网 作者:佚名
主要方法是:
用一个隐藏控件保存当前scorll值。回传回来后根据scroll的值在重新设置scroll。
1、首先用onscroll事件保存scorll值,并用HiddenField记录scroll值
复制代码
代码如下:
<div id="lv_content" class="unify_content" style="padding-left: 0; height: 455px;" onscroll="SetScrollPosition(this)">
</div>
<asp:HiddenField ID="HiddenFieldScroll" runat="server" />
代码
//2、编写onscroll事件,主要用于保存当前控件的scroll值
复制代码
代码如下:
function funSaveScroll(sender) {
//得到隐藏控件
var vScroll = $get('ctl00_ContentPlaceHolder1_hfLvScroll');
if (vScroll != null) {
//设置隐藏控件的值为scorll值
vScroll.value = sender.scrollTop;
}
}
代码
复制代码
代码如下:
//3、在页面的加载完成事件中处理scorll值
var prm = Sys.WebForms.PageRequestManager.getInstance();
//设置加载完成事件
prm.add_pageLoaded(pageLoaded);
//加载完成重新设置控件的scroll值
function pageLoaded(sender, args) {
//得到要设置scroll值的控件
var vDiv = $get("lv_content");
if (vDiv != null) {
//得到隐藏控件
var vScrollValue = $get("ctl00_ContentPlaceHolder1_hfLvScroll");
//设置控件的scroll值
vDiv.scrollTop = vScrollValue.value;
}
}
通过以上代码就可以解决回传回来后scroll变动的问题。
如果使用了Master页面,可以将上边的代码放在master页面中,进行公用。
1)先在Master页面中加入HiddenField。
<asp:HiddenField ID="HiddenFieldScroll" runat="server" />
代码
复制代码
代码如下:
/*
2)在master页面中编写onscroll事件,记录其它页面中控件的scroll值
使用方法:只要在要设置控件中设置其ID并加入onscroll事件即可。即加入 onscroll="SetScrollPosition(this)"语句
*/
function SetScrollPosition(sender) {
var scrollTemp = $get("ctl00_HiddenFieldScroll");
if (scrollTemp != null) {
//将要设置控件的ID和scroll值一起保存。中"|"分隔
scrollTemp.value = sender.id + "|" + sender.scrollTop;
}
}
代码
复制代码
代码如下:
//3)在页面的加载完成事件中处理scorll值
Sys.WebForms.PageRequestManager.getInstance().add_pageLoaded(onPageLoaded);
//The Pageloaded for scroll orientation
function onPageLoaded(sender, args) {
var scrollTemp = $get("ctl00_HiddenFieldScroll");
if (scrollTemp != null) {
var scorllValue = scrollTemp.value;
if (scorllValue.length > 0) {
var target = scorllValue.split("|");
if (target.length > 1) {
var targetControlID = target[0];
var targetValue = target[1];
var targetControl = $get(targetControlID);
//得到要设置控件
if (targetControl == null || targetValue.length < 1) {
return;
}
//设置控件的scroll值
targetControl.scrollTop = targetValue;
}
}
}
}
4)调用时,其它页面控件中加onscroll="SetScrollPosition(this)" 并设置ID即可
<div id="lv_content" class="unify_content" style="padding-left: 0; height: 455px;" onscroll="SetScrollPosition(this)">
</div>
来顶一下
返回首页
推荐资讯
ASP.NET 应用程序级 验证用户是否登
大家应该都希望有一种应用程序级的简单处理程序,今天刚好被
asp.net B2B网站对接支付宝接口
大型网上购物系统除了能让会员选择货到付款结账方式外,还应
相关文章
分享AjaxPro或者Ajax实现机制
asp.net使用母版页中使用ajax脚本取数据
asp.net下使用AjaxPro实现二级联动代码
点击图片,AJAX删除后台图片文件的实现代码(asp.net)
使用AjaxPro.Net框架实现在客户端调用服务端的方法
在vs2008中使用AJAX开发.net 2.0下的Web程序的方法
asp.net下ajax.ajaxMethod使用方法
asp.net ajax实现无刷新验证码
在Asp.net下实现变长连接的web即时应用的实现范例及Re
asp.net结合Ajax验证用户名是否存在的代码
栏目更新
栏目热门
返回首页
关于我们
联系我们
付款方式
价格总览
资讯中心
友情链接
媒体关注
有问必答
投诉建议
网站备案
《中华人民共和国增值电信业务经营许可证》编号:川B2-20080058号
官方网址:
xibushuju.com
西部数据
Copyright © 2002~2015
天府快车
版权所有
电话总机:
028-86758058
(50线) 传真:
028-86758058