Как получить данные события в Blazor / Razor - PullRequest
0 голосов
/ 15 мая 2019

Я начал с Blazor сегодня, уже имея некоторый опыт в веб-разработке.Однако кажется, что этого недостаточно.Я хочу получить аргументы события onkeydown, чтобы проверить наличие нажатия клавиши ввода.

Я уже пытался использовать функцию в своем событии для проверки нажатия клавиши в отдельной функции, и ужепопытался напрямую вставить что-то в событие onkeydown, но ничего не получилось.

Ниже приведено событие, от которого я хочу получить нажатие клавиши.

<input onkeydown="" bind="@todo.Title" />

1 Ответ

1 голос
/ 15 мая 2019

Вам нужно использовать UIKeyboardEventArgs, что-то вроде передачи события в качестве аргумента в JavaScript .

<p id="p" onclick="doSomething(event);">

В Blazor вы сделаете это следующим образом:

<input type="text" onkeypress="@(e => KeyWasPressed(e))" />

@functions {
  private void KeyWasPressed(UIKeyboardEventArgs args)
  {
    if (args.Key == "r")
    {
      Console.WriteLine("R was pressed");
    }
  }
}

Как уже упоминалось в комментариях @Bohring, вы все равно получите аргументы события, если будете писать onkeypress="@KeyWasPressed"

Подробнее о других аргументах событий вы можете прочитать здесь: https://visualstudiomagazine.com/articles/2018/10/01/blazor-event-handling.aspx

...