Как я могу заполнить ввод даты с помощью Laravel Dusk?

Я пытаюсь заполнить date ввод с Laravel Dusk с этим кодом:

$browser->type('cooked_at', (new Carbon())->format('Y-m-d'));
// ...

Но я получаю эту ошибку:

Элемент должен быть редактируемым пользователем, чтобы очистить его

Все остальные поля ввода в порядке. Просто тот, что с типом date выходит из строя.

Как я могу заполнить ввод даты с помощью Laravel Dusk?

2 ответа

Решение

Согласно этой проблеме, вы должны сделать что-то вроде:

$today = now();
$browser->keys('#cooked_at', $today->day)
        ->keys('#cooked_at', $today->month)
        ->keys('#cooked_at', $today->year);
// ...

Вот небольшой совет для тех, кто пытается протестировать<input type="date">поле с Laravel Dusk.

->type('#cooked_at', '2022-01-01')не работает так, как вы ожидаете, но это работает:

      $browser->keys('#cooked_at', '2022', '01', '01', '{tab}')

Или вы можете передать дату, например

      $today = now();

$browser->keys('#cooked_at', $today->year, $today->month, $today->day, '{tab}')
Другие вопросы по тегам