Loading [MathJax]/jax/output/CommonHTML/config.js
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >防止回发后的页面滚动并保持位置

防止回发后的页面滚动并保持位置
EN

Stack Overflow用户
提问于 2012-04-13 03:44:53
回答 8查看 45.3K关注 0票数 15

我的工作与添加用户的分数基于他们的检查在一个CheckBoxList。每次用户选中一个框时,就会将一个值X添加到总分数中。当用户取消选中某个框时,将从总得分中减去一个值X。这里没有问题。

我遇到的问题是,在CheckBoxList属性中使用AutoPostback选项会强制页面加载回到顶部,而不是停留在用户所在的位置,这意味着他们必须在每次选中/取消选中后继续向下滚动。有没有办法防止这种情况发生?

EN

回答 8

Stack Overflow用户

回答已采纳

发布于 2012-04-13 03:58:02

Ajax解决方案

当然,最好的方法是使用Ajax调用。页面根本不会移动,而只是更新数据。updatepanel是一个快速而简单的启动解决方案-不是一个最佳的解决方案,但如果你有一个简单的页面,它是一个非常好的解决方案。

第二种解决方案

第二种解决方案是使用锚点#。您可以设置您希望它显示的点:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
<a name="PointA"></a>

然后使用该锚点作为page.aspx#PointA调用页面。

第三种解决方案

第三种解决方案是在页面声明(顶部第一行)上使用ASP.NET的内部JavaScript代码<%@ Page MaintainScrollPositionOnPostback="true" %>

或在web.config上影响所有页面,<pages maintainScrollPositionOnPostBack="true" />

或者以编程方式System.Web.UI.Page.MaintainScrollPositionOnPostBack = true;来按需打开和关闭它。

使用jQuery

只需两行jQuery代码,您就可以在回帖后在您想要移动的点上制作一个不错的动画:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
var WhereToMove = jQuery("#PointA").position().top;
jQuery("html,body").animate({scrollTop: WhereToMove }, 1000);

然后将页面移动到此元素:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
<a id="PointA" name="PointA"></a>

谷歌搜索

最后,您可以使用定制的JavaScript代码来做同样的事情。互联网上有很多这样的例子:https://www.google.com/?q=asp.net+remain+position

票数 43
EN

Stack Overflow用户

发布于 2016-11-09 00:21:58

防止回发后页面滚动的两个最好的方法是:把这个放在web.config中。

1) pages maintainScrollPositionOnPostBack="true“

许多人质疑,这条线到底放在哪里。所以这条线的确切位置是

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
<system.web>
<pages maintainScrollPositionOnPostBack="true">
</system.web>

注意:这将适用于整个解决方案,它可以防止每个窗体滚动

2)实现这一点的第二种方法是将此行放在aspx文件的顶部

MaintainScrollPositionOnPostback=true

像这样

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
<%@ Page MaintainScrollPositionOnPostback=true Language="C#" AutoEventWireup="true" CodeBehind="xx.aspx.cs" Inherits="xx.Global" %>

注意:这将应用于您要阻止的特定表单。

票数 7
EN

Stack Overflow用户

发布于 2013-09-29 05:28:56

我可以想到三种可能的方法:

在应禁用滚动的页面上,将attribute MaintainScrollPositionOnPostback in Page ("<%@ Page ....>")指令设置为true,即<%@ Page MaintainScrollPositionOnPostback=true ...other settings... >应出现在aspx页面的顶部

  • 对于网站中的所有页面,请在web.config中添加以下行:<pages MaintainScrollPositionOnPostback=true>

  • Incorporate AJAX Queries
票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/10134963

复制
相关文章
Ubuntu / Debian 安装 MySQL
首先打开网站 MySQL APT Repo,下载 MySQL APT 仓库描述文件:
Kindem
2022/08/12
2.7K0
Ubuntu / Debian 安装 MySQL
ubuntu最详细安装nginx_ubuntu centos debian
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
全栈程序员站长
2022/11/04
4910
开源社区的运作模式:Debian Vs. Ubuntu
Debian和Ubuntu都有一组官方授予的针对贡献者的成员角色,他们可以以参加选举或其他官方决策等方式参与到项目的治理中,同时这也是给贡献者分配工作的一种手段,大部分贡献者对他们获得的身份都感到很自豪。
Debian中国
2018/12/20
2K0
Ubuntu 20.04 Debian 9/10 开启Google BBR的方法
BBR是Google开源的TCP BBR拥塞控制算法,用于提升网络连接速度,提升空间巨大,优化效果非常明显;BBR仅支持4.9以上内核Ubuntu 18.04/20.04 CentOS 8 Debian 9/10均为4.9以上内核无需更换内核可以直接开启BBR。
Balliol Chen
2022/04/22
5.2K0
Ubuntu 20.04 Debian 9/10 开启Google BBR的方法
Debian 和Ubuntu Mono 3.0 部署包
Mono 3.0 刚发布,Debian 的Mono打包工作也开始了, 这篇博客《Mono 3.0 Preview Packages for Debian and Ubuntu 》讲述了Debian 和Ubuntu Mono 3.0 部署包的制作和最新的更新,目前最新的支持到Mono 3.0.6,目前还是在beta阶段,不用把它用于生产环境。 在/etc/apt/sources.list 文件里增加一行: deb http://debian.meebey.net/experimental/mono / 更新
张善友
2018/01/30
5600
Debian、Ubuntu系统中开机启动设置
Unix系统使用比较广泛的便是Linux系统,而基于Linux内核下也有很多衍生的其他的系统,其中就有Debian、Ubuntu这类的系统,在Linux系统下平时使用习惯的开机启动/etc/rc.local或/etc/rc.d/rc.local就没有了,那在Debian、Ubuntu下需要开启启动时就需要使用update-rc.d用来定义开机启动的命令 ,举一个简单的例子在Debian、Ubuntu开机启动iptables:
用户8710643
2021/06/11
1.1K0
Protobuf 扩展指南
另一个真实的例子,来自 google 的 http 扩展,这里插件会获取 名为 google.api.http 的 option,然后转换为 http 结构
王磊-字节跳动
2020/05/12
10.2K0
ubuntu强制修改密码_debian修改密码命令
-rwxr–r– 1 root root 2752 Dec 31 17:29 /etc/passwd
全栈程序员站长
2022/10/03
5.1K0
debian配置samba_ubuntu设置文件共享
●仅支持匿名用户的只读访问(请在该目录内存放一个文件名为file.txt, 文件内容为“Test File” 以便于测试)
全栈程序员站长
2022/09/29
8280
Debian和Ubuntu安装k8s
Xiongan-桃子
2023/10/23
2810
Debian7&Ubuntu 13.10下配置Bugzilla
Perl (5.8.1 or above) MySQL Apache2 Bugzilla
星哥玩云
2022/06/30
5850
在Debian和Ubuntu上使用Apache的SSL证书
本指南将向您展示如何在Debian和Ubuntu系统上启用SSL来确保通过Apache部署的网站的安全。原文地址
Noel
2018/09/03
2.1K0
Centos、ubuntu、debian安装docker-compose的正确方法
网上关于Centos7安装docker-compose的方法有2种,一种是通过python pip安装,但是我按照这种方法安装失败。第2种就是这里介绍的,直接从GitHub下载docker-compose编译好的可执行文件,该方法最为简单高效。牛哥强烈推荐centos7系统用户使用该方法安装docker-compose。
用户2135432
2023/10/21
9740
ubuntu下安装php扩展
参考原文地址:http://www.php.cn/php-weizijiaocheng-341528.html
lin_zone
2018/08/15
1.1K0
Debian、Ubuntu安装源配置文件说明
源列表主文件 /etc/apt/sources.list,兼取 /etc/apt/sources.list.d/*,结果以并集论。 源列表文件以行为单位,每行分多个字段,字段间以空白符分隔。井号(#)开头为注释行。样例如下:
Debian中国
2018/12/20
2.1K0
debian使用LVM扩展第二块硬盘
新入手一台2*2T机器,新装的系统挂载了第一块硬盘,通过查找资料摸索着挂载成功了第二块硬盘,这里仅作记录。 新系统的挂载情况: 新系统的分区挂载情况 fdisk -l查看磁盘信息:(其中/dev/sd
用户2135432
2018/06/04
2.1K0
如何在Ubuntu和Debian上安装R.
R是包含了数据可视化功能的用于统计分析的编程语言。该语言通过Comprehensive R Archive Network(CRAN)拥有高度的可扩展性,该网络托管了10,000多个R包,用于生成出版数据,专用计算工具等。
魔法少女伊莉雅
2018/09/04
1.9K0
如何在Debian和Ubuntu中安装VirtualBox 6
  VirtualBox是一款功能强大,通用且跨平台的完整虚拟化软件,主要面向服务器,桌面和嵌入式应用。它可以安装在任何操作系统(Linux,Windows,Mac等)上,并允许您在同一台计算机上安装和运行多个客户机操作系统。
会长君
2023/04/26
1.1K1
在Ubuntu 16.04或Debian 8上安装SquirrelMail
SquirrelMail是一个用PHP编写的webmail包,它支持SMTP和IMAP协议,并具有跨平台兼容性。SquirrelMail需要一台带有PHP的Web服务器才能正常运行。对于本指南,我们将使用Apache 2.如果您还没有安装Apache和PHP,可以在Ubuntu 16.04安装LAMP或Debian 8 安装LAMP查看我们的安装指南。
Likenttt
2018/09/12
2K0
在Ubuntu 16.04或Debian 8上安装SquirrelMail
Debian&Ubuntu下安装快捷ssh工具dropbear
注意:Debian&Ubintu通过apt安装后,会自动生成密钥等需要的信息,所以不用再手动配置。
子润先生
2021/06/14
1.4K0

相似问题

FTP上传后无法成功回调

13

FTP上传后未获得成功或错误回调

11

启动-停止-守护进程总是返回成功。

22

在alljoyn守护进程启动后无法启动服务

12

启动守护进程,但直到守护进程启动进程在golang中完成后才会继续。

13
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文