Validation 无法以编程方式(jQuery/javascript)将页面滚动到顶部
在保存一个相当长的页面时,如果视图模型有验证错误,我希望焦点返回到页面的顶部,但它没有 验证摘要位于视图的顶部:Validation 无法以编程方式(jQuery/javascript)将页面滚动到顶部,validation,scroll,summary,Validation,Scroll,Summary,在保存一个相当长的页面时,如果视图模型有验证错误,我希望焦点返回到页面的顶部,但它没有 验证摘要位于视图的顶部: <div class="error" id="validationSummary"> <div class="row"> <div class="span6" id="bookmarker"> @Html.ValidationSummary(False) </div>
<div class="error" id="validationSummary">
<div class="row">
<div class="span6" id="bookmarker">
@Html.ValidationSummary(False)
</div>
</div>
</div>
…等等
我在很多页面上都有这个问题,但在一些页面上,我通过将验证摘要嵌套在更多的DIV标记中来解决这个问题
在任何情况下,我在这一点上都相当困惑,花了太多时间尝试这个和那个…任何帮助/想法都是天赐良机。首先,你需要将页面的焦点设置为实际的正文,而不是DIV。其次,你可以使用javascript代码导航回顶部
((IJavaScriptExecutor)webapplication).ExecuteScript("window.scrollTo(0, document.body.scrollHeight 0)");
如果你想要更多的信息和细节,我已经在这里发布了一个类似但更详细的答案,尽管它是针对c#的,你唯一需要编辑的代码是为页面主体编写SetFocus的方式:
希望这对你有用。对不起,我不知道这篇文章是很久以前写的
((IJavaScriptExecutor)webapplication).ExecuteScript("window.scrollTo(0, document.body.scrollHeight 0)");