在ASP.NET MVC 4视图中,我有一个可以使用AJAX更新的“低于首屏”的div。即使使用异步更新,浏览器也会滚动到页面顶部。
似乎有几种可用的javascript解决方案(我都没有开始工作),但是有人为这个挑战提出了一个MVC解决方案...特别是像在PagePage中使用RequestPageManager的web.UI解决方案旧式“(哈哈)asp.net?
答案 0 :(得分:0)
您是否尝试过JQuery ajax()调用?
就像下面的
function update() {
jQuery.ajax({
url: 'Page2.aspx/GetData',
type: "POST",
data: "{'userid':" + userid + "}",
contentType: "application/json; charset=utf-8",
dataType: "json",
success: function (data) {
//This is where you update the div alert(data.d);
}
});
}
我从网上提取了以上代码。虽然没有测试。只是想提出一个想法。
答案 1 :(得分:0)
对我来说,浏览器只是因为您使用从AJAX调用收到的内容更新页面而滚动似乎很奇怪。
但是,我可以想到一些可能发生这种情况的情况:
1)ajax调用是从绑定到" a"的点击事件开始的。标记为" href"属性设置为"#"如:< a href ="#">这是一个链接< / a>。如果你没有在click事件中调用preventDefault,浏览器将会访问" "#"链接并使浏览器滚动到页面顶部。
2)浏览器专注于ajax调用中插入内容之下的元素。在这种情况下,添加的ajax内容足够长,导致浏览器移动以保持对以前具有焦点的元素的关注。
如果上述任何一项原因不适用,请提供更多信息以诊断您的问题。