我正在使用asp.net mvc3构建一个移动网站,并且只是了解mvc框架。我要求我不能使用javascript,因为有些手机不兼容。我有一个在回发上验证的表单。如果验证无效,我想将页面重新加载到表单而不是页面顶部。是否可以让我的控制器告诉视图加载到表单ID而不只是说return View("ViewName");
?
感谢您的帮助, 乙
答案 0 :(得分:1)
如果没有javascript,最好的办法是使用anchors:
<a name="foo"></a>
<form action="@Url.Action(null)#foo" method="post">
...
<input type="submit" value="OK" />
</form>
当您提交表单时,它会发布到以下网址/Home/Index#foo
,该网址会自动将浏览器滚动到具有此名称的相应锚点,该名称位于表单的顶部。
答案 1 :(得分:0)
看到这个不错的解决方案(还有很多但是效率很高而且很小):How do I maintain scroll position in MVC?