Возможно ли создать собственный код, который включает как javascript (jQuery), так и код Ruby?Пользовательский объект jQuery per Rails
У меня есть неопределенное количество объектов, которые я заполняю в представлении, которые используют плагин jquery-cron, который должен быть создан с использованием тегов идентификаторов вместо селектора классов. На данный момент я просто пытаюсь создать jQuery в тегах <script></script>
в конце представления.
На мой взгляд:
<% @devices.each do |d| %>
<div id="scan_selector_device_<%= d.id %>"></div>
<input type="hidden" id="device_id">
<input type="hidden" id="scan_time_device_<%= d.id %>" required="required">
</div>
<% end %>
Таким образом, у меня может быть 1 или 50 из них созданы в зависимости от количества устройств, которые пользователь.
Чтобы получить эту работу, мне нужно вызвать JavaScript для инициализации:
<script>
$('#scan_selector_device_1').cron({
onChange: function() {
$('#scan_time_device_1').val($(this).cron("value"));
},
useGentleSelect: true,
});
</script>
Я хотел бы, чтобы обернуть JavaScript в том же .each
и создать соответствующий инициализатор для каждого объекта делает что-то вроде:
<script>
$("#scan_selector_device_<%= d.id %>").cron({
onChange: function() {
$('#scan_time_device_<%= d.id %>').val($(this).cron("value"));
},
useGentleSelect: true,
});
</script>
Однако это не работает. Итак, как мне это сделать?
Вы пытались предоставить каждому объекту cron тот же класс? например, 'class =" cron "' и просто использовать '.each()' для их инициализации? – mrvncaragay
@ Marv-C Да, проблема в третьей строке, где мне нужно создать значение cron. Он копирует их все, если я каким-то образом не нацелен на 'scan_time_device _ # {d.id}' для сохранения значения. – Godzilla74