Как отправить данные с ввода с помощью атрибута asp-route? - PullRequest
0 голосов
/ 02 июня 2019

Я использую этот код для вызова контроллера с действием.Я хочу отправить данные из входного тега внутри asp-route-data.

<span><label><b>Korisnik :</b></label></span>
<br />
<input type="text" name="korisnik" id="korisnik" size="40" height="25" />
<br />
<br />
<span><label><b>Lozinka :</b></label></span>
<br />
<input type="password" name="lozinka" id="lozinka" size="40" height="25" />
<br />
<br />
<button type="submit" title="Login" class="btnLogin" asp-controller="Members" asp-route-username=a sp-route-password="" asp-action="LoginUser">

Таким образом, asp-route-username должно быть значением из входного корисника.Возможно ли это?

Ответы [ 3 ]

0 голосов
/ 03 июня 2019

Если вы передадите username и password, используя asp-route-{value}, эта информация будет отображаться в URL, что не рекомендуется.

Если вы просто хотите передать два входных значения из представления в контроллер, вам нужно изменить name атрибут ввода для соответствия параметрам действия. Например:

Вид:

<form method="post" asp-controller="Members" asp-action="LoginUser">
    <span><label><b>Korisnik :</b></label></span>
    <br />
    <input type="text" name="username" id="korisnik" size="40" height="25" />
    <br />
    <br />
    <span><label><b>Lozinka :</b></label></span>
    <br />
    <input type="password" name="password" id="lozinka" size="40" height="25" />
    <br />
    <br />
    <button type="submit" title="Login" class="btnLogin"></button>
</form>

Действие:

[HttpPost]
public async Task<IActionResult> LoginUser(string username,string password)
0 голосов
/ 03 июня 2019

У меня есть ответ. В конце я использовал IFormCollection, а затем получил значение из него.

[HttpPost]
[Route("LoginUser")]
public ActionResult LoginUser(IFormCollection collection)
{

    string user = collection["korisnik"];
}
0 голосов
/ 03 июня 2019

Если я правильно понял ваш вопрос (в чем я не уверен), я думаю, что ответом на вашу проблему является использование тега <form>.Затем вместо применения атрибутов asp-route к тегу <button> примените их к тегу <form>:

<form asp-controller="Members" asp-action="LoginUser" asp-route-username="a" asp-route-password="">
    <span><label><b>Korisnik :</b></label></span>
    <br />
    <input type="text" name="korisnik" id="korisnik" size="40" height="25" />
    <br />
    <br />
    <span><label><b>Lozinka :</b></label></span>
    <br />
    <input type="password" name="lozinka" id="lozinka" size="40" height="25" />
    <br />
    <br />
    <button type="submit" title="Login" class="btnLogin"></button>
</form>

Обязательно ознакомьтесь с официальной документацией по ASP.NET Core для .работа с формами .

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