【发布时间】:2017-11-16 06:05:39
【问题描述】:
正如标题所述,我编写了一个 ajax 函数,它应该滚动到用户在被重定向之前所在的位置。
我为测试场景写了一个alert,它确实触发了,但滚动一直回到顶部,我在这里做错了吗?
JavaScript:
$.ajax({
type: "GET",
url: "AdminListUsers.aspx?column=Disabled&direc=False&a=chstat&z=+",
success: function loadDoc() {
window.scrollTo(window.pageXOffset, window.pageYOffset);
}
});
C#:
var toggleUrl = "AdminListUsers.aspx?column=" + (IsClicked.FirstOrDefault().Key ?? "Name") + "&direc=" + (IsClicked.FirstOrDefault().Value) + "&a=chstat&q=" + id.ToString() + "&d=" + disabled + "&z=" + Server.UrlEncode(txtSearchFor.Text);
var hl = new HyperLink();
hl.Text = status;
hl.Style.Add(HtmlTextWriterStyle.Color, (disabled ? "red" : "green"));
hl.NavigateUrl = toggleUrl;
hl.Attributes.Add("onclick", "loadDoc();return true;");
cell.Controls.Add(hl);
tr.Cells.Add(cell);
【问题讨论】:
-
删除所有
xhttp引用和success处理程序中的if语句。只需将window.scrollTo()呼叫放在那里即可。 -
@RoryMcCrossan 查看更新后的问题。这是你的意思吗?因为这也不起作用。
-
是的,至少现在在语法上是正确的。当你说它不起作用时,会发生什么?
-
@RoryMcCrossan 我的意思是它不会滚动到当前位置,它只是再次向上滚动,就像您第一次刷新页面一样。尽管如此:如果我指定我希望它滚动到最底部,它确实如此,所以为什么滚动位置的值未定义很奇怪。
-
这里有一个几乎相同的问题:stackoverflow.com/questions/44520790/…
标签: javascript c# jquery .net ajax