Установить параметр asp-route-content из значения textarea при отправке - PullRequest
0 голосов
/ 17 марта 2019

У меня есть кнопка-помощник tag-страниц, вызывающая asp-page-handler с параметром asp-route-content, который должен получить свое значение из элемента управления textarea в представлении страницы бритвы при нажатии кнопки submit.Как это можно сделать?

Частичный код вида Razor:

 <form method="post">
      <div class="modal-body">
           <textarea id="content" name="content" cols="90" rows="4" placeholder="Comment" required></textarea>
      </div>
      <div class="modal-footer">
           <button type="button" class="btn btn-secondary" data-dismiss="modal">Close</button>
           <button type="submit" asp-page="/Post" asp-page-handler="ReplyToComment"
                   asp-route-blogid="@Model.BlogID" asp-route-parentid="@Model.ID"
                   asp-route-email="@user.Email" asp-route-author="@author"
                   asp-route-content="" class="btn btn-primary">Save Reply</button>
      </div>
 </form>

Обработчик страницы Razor:

    public async Task<IActionResult> OnPostReplyToComment(int blogid, 
           int parentid, string email, string author, string content)

1 Ответ

0 голосов
/ 18 марта 2019

Вам необходимо либо привязать текстовое содержимое к свойству на вашей странице:

    [BindProperty]
    public string Content { get; set; }

и используйте помощник по тегам asp-for для текстовой области:

<textarea asp-for="Content" cols="90" rows="4" placeholder="Comment" required></textarea>

Или используйте атрибут [FromForm] в сигнатуре метода:

public async Task<IActionResult> OnPostReplyToComment(int blogid, 
       int parentid, string email, string author, [FromForm] string content)

Для получения дополнительной информации см. Документы MS по привязке модели

.
...