изменение фокуса на другое поле с помощью laravel livewire - PullRequest
0 голосов
/ 18 апреля 2020

Можно ли установить фокус на другое поле из laravel livewire без использования кода js.

input wire:model="sku" wire:keydown.enter="getProductInfo" type="text">

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

1 Ответ

1 голос
/ 18 апреля 2020

Вам понадобится событие, чтобы достичь этого. отправьте событие из вашей функции getProductInfo. вот так:

$this->emit('change-focus-other-field') //any unique event name you want

Затем перехватите это событие в своем блейде компонента livewire. и делай что хочешь. (в вашем случае специально. Сфокусируйте поле с помощью jQuery. Я предполагаю, что вы импортировали jQuery в свой проект)

@push('scripts')
<script>
   window.livewire.on('change-focus-other-field', function () {
        $("#field-you-want-to-focus").focus();
    });

</script>
@endpush

...