1

简而言之,我试图在我提交的页面上找到一个锚点。

所以我的代码看起来像:

@using (Html.BeginForm("Times#" + Model.SelectedTimeSort, "Patron", FormMethod.Post, new { id = "frmBuildings" }))

但在形式上它是:

<form action="/Times%23Evening" id="frmBuildings" method="post">

如何设置它以提交和传递锚标记?

4

2 回答 2

2

假设您在应用程序上发布到另一个 MVC 方法:

您需要向页面添加一些 JavaScript,然后在 ViewModel 中添加在 MVC 控制器回发代码中设置的 Anchor 字符串属性,当视图加载时,javascript (onLoad) 可以检测参数并将页面滚动到锚点:

location.hash = "#" + "@(Model.MyAnchorName)"; 
于 2012-10-04T14:06:18.873 回答
1

只需摆脱 Html.BeginForm 并使用带有 Url.Action的 html表单标签

<form action="@Url.Action("Times", "Patron")#@Model.SelectedTimeSort" id="frmBuildings" method="post">
</form>

根据正确答案依赖javascript似乎只是为了保留“BeginForm”。

于 2014-04-28T23:11:27.447 回答