Входной токен Jquery не заполняет поле text_field - PullRequest
0 голосов
/ 16 июня 2011

Привет, у меня есть tokenInput документация, но каким-то образом мои text_field category_tokens не заполняются категориями при редактировании.

Вот фрагменты кода

<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;">

$(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 %>

Любой указатель приветствуется!

Ответы [ 3 ]

1 голос
/ 25 января 2012

изменение

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

до

<%= f.text_field :category_tokens, input_html => { "data-pre" => @product.categories.map(&:attributes).to_json } %>
1 голос
/ 06 сентября 2011

Может быть, вы можете попробовать изменить prePopulate на $(this).data("pre").

Еще один совет - использовать класс поля вместо идентификатора в функции JS и в вашем представлении, поскольку он изменяется при визуализации.

Надеюсь, это поможет вам.

0 голосов
/ 16 января 2013

Json должен возвращать объекты не как строку, это преобразует строку в объект Json

 JSON.parse(tokendata)
...