Вызовите метод управления GET контроллера со страницы входа контроллера учетной записи в asp.net mvc - PullRequest
1 голос
/ 29 мая 2019

Хотите вызвать метод AddPhoneNumber в Управляющем контроллере со страницы входа в систему Account Controller.У меня есть флажок на странице входа, который я реализовал для OTP.

Я хочу, чтобы при установке флажка он вызывал AddPhoneNumber метод GET из Manage Controller для открытия страницы.

Управление контроллером

 // GET: /Manage/AddPhoneNumber
        public ActionResult AddPhoneNumber()
        {
            return View();
        }

Страница AddPhoneNumber

@model Aayumitra.Models.AddPhoneNumberViewModel

        @using (Html.BeginForm("AddPhoneNumber", "Manage", FormMethod.Post, new { @class = "form-horizontal", role = "form" }))
        {
            @Html.AntiForgeryToken()
            <h4>Add a phone number</h4>
            <hr />
            @Html.ValidationSummary("", new { @class = "text-danger" })
            <div class="form-group">
                @Html.LabelFor(m => m.Number, new { @class = "col-md-5 control-label" })
                <div class="col-md-7">
                    @Html.TextBoxFor(m => m.Number, new { @class = "form-control" })
                </div>
            </div>
            <div class="form-group">
                <div class="col-md-offset-2 col-md-10">
                    <input type="submit" class="btn btn-primary" value="Send verification code" />
                </div>
            </div>
        }

Страница входа

@using Aayumitra.Models
@model LoginViewModel

 @using (Html.BeginForm("Login", "Account", new { ReturnUrl = ViewBag.ReturnUrl }, FormMethod.Post, new { @class = "form-horizontal", role = "form" }))
    {
        @Html.AntiForgeryToken()

                <div class="form-group">
                    <label for="email">Mobile Number / Email ID</label>

                    @Html.TextBoxFor(m => m.Email, new { @class = "form-control form-control-sm", placeholder = "Mobile Number / Email ID" })
                    @Html.ValidationMessageFor(m => m.Email, "", new { @class = "text-danger" })
                </div>
                <div class="form-group">
                    <label for="password">Password</label>
                    @Html.PasswordFor(m => m.Password, new { @class = "form-control form-control-sm password-input", placeholder = "Password" })
                    @Html.ValidationMessageFor(m => m.Password, "", new { @class = "text-danger" })
                </div>
                <div class="form-group">
                     <input type="checkbox" name="remember-password" id="remember-pass-check" onclick="triggerLink()">
                    <label for="">Login with OTP instead of password</label>
                </div>
    }

function triggerLink() {
        debugger;
        var theUrl ='@Url.Action("AddPhoneNumber","Manage", Model)';
    }

1 Ответ

0 голосов
/ 29 мая 2019

См .: Как мне перенаправить на другую веб-страницу?

В вашем методе triggerLink() что-то вроде:

<script type="text/javascript">
  function triggerLink() {
      debugger;
      var theUrl ='@Url.Action("AddPhoneNumber","Manage")';
      window.location.href = theUrl;
  }
</script>

Кроме того, не думайте, что вынужно передать модель, поскольку действие вашего контроллера не похоже на ожидаемое ...

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...