【问题标题】:Html form adding in hidden redirect button在隐藏的重定向按钮中添加 Html 表单
【发布时间】:2015-02-04 13:22:24
【问题描述】:

我正在使用 umbraco 并让它处理允许我的用户登录。我尝试在 MVC 中创建自己的日志,但是已经有很多逻辑建立在旧方式之上。而且我不想花时间重新构建它。

因此,我想知道是否可以添加一个隐藏字段,允许用户在使用以下表单代码登录时被重定向到我的主页:

@using (Html.BeginUmbracoForm<UmbLoginController>("HandleLogin"))
{
    <legend>Login</legend>

    @Html.ValidationSummary("loginModel", true)

    @Html.TextBoxFor(m => loginModel.Username, new { @class = "form-control", @placeholder = "Username" })
    @Html.ValidationMessageFor(m => loginModel.Username, "", new { @class = "alert-danger", @role = "alert" })
    <br />

    @Html.PasswordFor(m => loginModel.Password, new { @class = "form-control", @placeholder = "Password" })
    @Html.ValidationMessageFor(m => loginModel.Password, "", new { @class = "alert-danger", @role = "alert" })
    <br />

    <button class="btn btn-default">Login</button>

}

【问题讨论】:

  • 我可以回答更一般的表单登录情况,但我不知道 Umbraco 给你什么样的控制。通常,您可以在控制器中选择重定向的方式和时间。 Asp.NET 自动添加 ?ReturnURL={url 编码的相对 url} 后缀,这是控制器在登录时用来重定向回特定页面的内容。如果控制器返回 RedirectToAction("Index", "Home") 他们总是会去他的主页。或者,您也可以在之后将他们发送到他们的帐户页面。
  • 这很有意义。但是,Umbracos 登录功能只是将用户返回到他们所在的当前页面。由于我无权访问运行它的控制器,因此我无法这样做。我真的希望有一种方法可以通过一些 HTML 代码来做到这一点。

标签: html asp.net-mvc razor umbraco


【解决方案1】:

您应该能够在创建它的位置设置 loginModel.RedirectUrl,然后将以下内容添加到您的表单中:

@Html.HiddenFor(m => loginModel.RedirectUrl)

【讨论】:

    猜你喜欢
    • 2021-11-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-03-28
    • 2021-06-14
    • 1970-01-01
    • 2015-05-30
    • 2018-10-11
    相关资源
    最近更新 更多