Я использую валидации по умолчанию, которые генерируют окружение красного поля в полях с ошибками.Проверка подлинности автозаполнения JQuery в рельсах
Итак, после того, как пост, код так:
<input id="post_date" name="post[date]" type="text">
воля стала так:
<div class="field_with_errors">
<input id="post_date" name="post[date]" type="text">
</div>
так, с помощью простого CSS мы можем установить красную границу:
.field_with_errors input{border: 1px red}
Моя проблема началась, когда я поместил поле автозаполнения в свою форму. Для того, чтобы отправить «ID» значение на сервер и показать «имя» значение в поле, создать скрытое поле для идентификатора, например:
<p>
<%= f.label :user %>
<%= f.hidden_field :user_id%>
<%= text_field_tag :user %>
</p>
Где «text_field_tag» мое автозаполнение:
$("input#user").autocomplete({...});
И скрытое поле будет содержать идентификатор для серверной почты.
После этого, если в этом поле есть ошибка (как и требуется), Rails не окружает ни одно из них магическим элементом div.
Любые подсказки об этом? Спасибо.
Это не работает, потому что он пытается отправить поле имя пользователя (тот, который отображается) в поле идентификатора , – Beetlejuice
, независимо от того, насколько это работает, это то, что вам нужно, когда вы не рельсы, чтобы выделить его. в противном случае вам нужно добавить сами классы css. в этом случае вам нужно посмотреть на '@ user.errors' или' f.error_messages' взгляд на руководства для более подробной информации. http://guides.rubyonrails.org/active_record_validations_callbacks.html#displaying-validation-errors-in-the -Посмотреть – phoet