Автозаполнение с typeahead в рельсах 3

0

Я разрабатываю автозаполнение для конкретной формы в приложении rails; для этой цели я использую typeahead.js с настраиваемым методом контроллера. Пока это работает, но мне нужно снова использовать эти значения в форме, чтобы я мог нажать кнопку отправки, и форма будет размещаться и обрабатываться рельсами обычно. Как я могу это сделать? Здесь код прямо сейчас

.page-header
  %h1
    = @org.name
    %small= t('.title')
= form_for @org_admin, |
       url: organization_organization_admins_path(@organization) do |f|
  .form-group
    = f.label t('.user')
    = f.hidden_field :user, id: 'user_id'
    %input.typeahead{ :type => "text", :autocomplete => "off"}
= f.submit t('.submit'), class: 'btn btn-primary'
= link_to t('.back'), organization_organization_admins_path(@organization)
:javascript
  $(document).ready(function() {
  $('input.typeahead').typeahead({
    name: 'names',
    remote: "#{search_organization_organization_admins_path(@organization)}?term=%QUERY",
    engine: Hogan,
    template: '<p><strong>{{username}}</strong></p>',
    limit: 10
    }).on('typeahead:selected', function(e, data){
        $('#user_id').value = data.id
    });
  });

Итак, я хотел бы заполнить атрибут: user в форме с помощью объекта json, возвращаемого контроллером

Теги:
autocomplete

1 ответ

0

Nevermind, я понял... приведенный выше код находится в правильном пути, за исключением вызова этой строки

$('#user_id').value = data.id

Поскольку я использую jQuery для выбора скрытого элемента, мне пришлось использовать функцию jQuery val вместо

$('#user_id').val(data.id)

Ещё вопросы

Сообщество Overcoder
Наверх
Меню