📅  最后修改于: 2023-12-03 14:39:22.828000             🧑  作者: Mango
当用户在 ASP.NET 页面中点击链接或按钮时,页面通常会自动滚动到顶部。这可能会让用户迷惑,尤其是当他们正在查看较长的页面时。本文将介绍如何在 ASP.NET 中停止页面在点击时自动滚动到顶部。
首先,可以通过以下脚本禁用页面在回传期间自动滚动到顶部:
<script type="text/javascript">
var prm = Sys.WebForms.PageRequestManager.getInstance();
prm.add_beginRequest(function () {
prm._scrollPosition = null;
});
</script>
上述脚本使用 ASP.NET AJAX 的 PageRequestManager 类,该类在发起回传请求时调用 add_beginRequest() 方法。在此方法中,prm._scrollPosition 属性被设置为null,以确保页面不会在处理回传请求时滚动到顶部。
如果使用 jQuery,可以使用以下代码:
$(document).ready(function () {
var form = $('form');
form.on('submit', function () {
form.scrollLeft(0);
form.scrollTop(0);
});
});
上述代码在页面加载完成时绑定了一个提交事件,当用户提交表单时,它将让表单向左和向上滚动到顶部。
在 ASP.NET 中防止页面自动滚动到顶部非常简单。只需要使用上述脚本或代码即可。这样可以让你的用户更容易地与你的页面进行交互,而不会在页面回传时感到困扰。