Как получить значение индекса, который образует кокон? - PullRequest
0 голосов
/ 08 апреля 2019

Требуется элемент управления id (или класс ), который образует кокон .
Чтобы пользовательские ссылки работали только для правильных элементов.Для ссылки цена не отображается заполните только поле new_price , связанное с ним.

И мне нужно получить уникальное значение, которое составляет кокон .

_promo_service_fields.html.haml

.nested-fields
  %p= f.select :service_id, {}, {}, {class: "service_#{f.index}"}
  %p= f.text_field :new_price
  %p= link_to "price is not displayed", '', remote: true, class: "no-price-#{f.index}"
  %p= link_to_remove_association "Удалить", f

:coffeescript
  $(".service_#{f.index}).ajaxChosen
    # minLength: 3
    dataType: 'json'
    type: 'GET'
    url:'/admin/promo_pages/search_service.json'
    data: {'keyboard':'cat'}

При f.index я получаю неправильное значение ( manual )

Как я могу получить уникальное значение, которое составляет кокон ?

1 Ответ

1 голос
/ 09 апреля 2019

Если вы проверите код, кокон заменит f.index только в том случае, если он окружен [] или _, как это используется в форме при обращении к вложенным элементам.

Таким образом, вики, на которую вы ссылаетесь (которую я не написал), просто работает в этом конкретном случае, потому что f.index находится в квадратных скобках.

Немного неясно, что вы пытаетесь сделать, но есть несколько альтернатив:

  • используйте обратные вызовы кокона, чтобы затем исправить свой код (например, назначить уникальный идентификатор на основе заказа / счетчика)
  • использовать селекторы jquery, которые позволяют просто обратиться / найти ближайший / ближайший селектор
...