Запрет действий по умолчанию

Иногда нам может потребоваться запретить браузеру какие-либо действия по умолчанию. Например, если вы кликаете по какой-либо ссылке, то браузер попробует перейти по ссылке указанной в атрибуте href. В Blazor мы можем запретить такое действие по умолчанию и переопределить поведение.

@on{EVENT}:preventDefault

Если нам необходимо запретить действие по умолчанию для какого-либо элемента, то мы можем использовать конструкцию вида:

@on{EVENT}:preventDefault [= True/False]

где EVENT — это событие DOM, которое мы хотим запретить. Если конструкция не содержит значение bool после знака =, то  такая запись эквивалентна следующей:

@on{EVENT}:preventDefault = True

Например, в прошлой части мы определяли EventCallback для компонента SurveyPrompt. Несмотря на то, что клик по ссылке приводил к ожидаемому результату — выводу строки, браузер все равно переходил по ссылке. Чтобы этого не происходило, мы могли бы запретить такое поведение браузера следующим образом:

<a target="_blank" ..... @onclick:preventDefault="true">brief survey</a>

Соответственно, после запрета действия по умолчанию, мы можем определить новое поведение, назначив этому событию свой обработчик:

 <a ..... @onclick:preventDefault="true" @onclick="OnClick">brief survey</a>
    
@code {
    // Demonstrates how a parent component can supply parameters

    public void OnClick()
    {
        здесь определяем новые действия
    }

 

Подписаться
Уведомить о
guest
0 Комментарий
Старые
Новые Популярные
Межтекстовые Отзывы
Посмотреть все комментарии