2013-04-09 88 views
10

我有一个包含多个锚点标记的视图。有没有办法使用模型对象返回视图并转到视图中的特定锚标记?返回查看模型并转到特定的锚点标记

例如,我的观点有锚这样的:

<a name="Section1"></a> 
    ... 
    <a name="Section2"></a> 

我知道我可以用打击的锚:

return Redirect(Url.RouteUrl(new { controller = "myController", action = "myAction" }) + "#Section1"); 

但我不认为我可以使用重定向,因为我需要发送型号:

return View("myAction", model); // how to go to anchor? 
+0

我不知道这是什么意思? – Liam 2013-04-09 14:29:15

+0

@李安真的吗?对我来说似乎很明显。我会编辑它。 – TTT 2013-04-09 14:37:22

+0

好多了!你试图重定向的动作是什么样子? – Liam 2013-04-09 15:36:36

回答

10

您可以发送视图模型中的某些内容来查看并使用JavaScript滚动到该锚点。假设你有一个名为Section的属性。您可以在您的控制器中设置,并在您的视图中使用此JavaScript代码滚动到该锚:

$(document).ready(function() { 
    var anchor = document.getElementById('@Model.Section'); 
    anchor.scrollIntoView(true); 
}); 
+0

谢谢。工作很好。我更改了我的锚点以指定id而不是名称: TTT 2013-04-09 18:51:32