Jquery токен Input не предварительно заполнен - PullRequest
0 голосов
/ 17 июня 2011

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

Обратите внимание, что текстовое поле category_tokens не заполняется категориями при редактировании.

Вот фрагменты кода, HTML-вывод text_field показывает значения.

  <input id="product_category_tokens" type="text" size="30" name="product[category_tokens]" data-pre="[{"created_at":"2010-09-13T03:33:17Z","description":"","id":x,"name":"Kitchen & Dining ","parent_id":xx,"permalink":"kitchen-dining","updated_at":"2011-01-05T11:17:10Z"}]" style="display: none;">

  application.js
    $(function() {
      $("#product_category_tokens").tokenInput("/categories.json", {
          crossDomain: false,
          prePopulate: $('#product_category_tokens').data('pre'),
          preventDuplicates: true
      });
    });

    <%= f.text_field :category_tokens, "data-pre" => @product.categories.map(&:attributes).to_json %>

1 Ответ

0 голосов
/ 11 мая 2012

Это дубликат: токен ввода Jquery без предварительного заполнения поля text_

И ответ прямо в конце:

<%= f.text_field :category_tokens, input_html => { "data-pre" => @product.categories.map(&:attributes).to_json } %>

Я не беру на себя ответственность за это (это не мой ответ), просто подумал, что укажу на это, если это поможет кому-то другому, потому что я тоже был пойман.

Я также хочу отметить, что в комментарии Шона вы можете обойти это, добавив это в свой файл js.coffee:

propertyToSearch: "author"

Измените author на любое имя вашего столбца, и это будет работать. :name просто по умолчанию, но вы можете переопределить его в этом методе. Больше документации на странице jquery tokeninput: http://loopj.com/jquery-tokeninput/

...