Laravel: Как мне автоматически сфокусировать поле ввода, если в var $error есть / нет ошибки?

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

Однако, если ошибок нет (случай по умолчанию), первый ввод должен быть сфокусирован, чего нет. Как мне добавить эти две опции в массив? Взгляните на первую группу формы.

<div class="form-group {{ $errors->has('name') ? ' has-error' : '' }}">
    {{ Form::text('name', null, [
        (!$errors) ? 'autofocus' : '',        // if no errors, autofocus because default
        ($errors->has('name')) ? 'autofocus' : ''   // if error in name, autofocus
    ]) }}
</div>

<div class="form-group {{ $errors->has('email') ? ' has-error' : '' }}">
    {{ Form::email('email', null, [
        ($errors->has('email')) ? 'autofocus' : ''   // if error in email, autofocus
    ]) }}
</div>

<div class="form-group {{ $errors->has('password') ? ' has-error' : '' }}">
    {{ Form::password('password', [
        ($errors->has('password')) ? 'autofocus' : ''   // if error in password, autofocus
    ]) }}
    </div>
</div>

1 ответ

Это должно работать:

....
'autofocus' => $errors->has('password') ? 'autofocus' : null,
....
Другие вопросы по тегам