Я использую рельсы для создания формы, которая позволяет пользователю нажимать кнопку, чтобы добавить новую строку в таблицу. На данный момент пользователь может нажать кнопку «Добавить», и появится новая строка.Как применить JS к добавленным пользователем строкам в tabel
У меня возникла проблема с столбцом, который использует autoNumeric для маскирования процентов. JS не применяется к столбцам, которые пользователь создает динамически. Я использую классы, поэтому я смущен, почему autoNumeric masking не применяется к новым строкам, поскольку пользователь их добавляет. Класс «процент» работает с другими частями формы.
# JS
$(function() {
$('.percentage').autoNumeric('init', {aSign: '%', pSign: 's'});
});
# the field is set to the proper class
<tr class="fields">
<td><input class="percentage" placeholder="Equity %" type="text"></td>
</tr>
# link that adds a new row
<a class="add_nested_fields" data-association="business_contacts" data-blueprint-id="business_contacts_fields_blueprint" data-target="#business_contacts" href="javascript:void(0)">Add a field</a>
Каждая добавленная строка имеет класс = "поля". Я попробовал JS onClick, но не получил успешных результатов.
Да. Правильно. Просто вызовите autoNumeric после каждого добавления строки. Это самое простое. Кстати, какой камень вы используете для добавления строки? – jaspreet21anand
Жаль, JS не мой сильный костюм. Когда вы говорите после каждого добавления строки, как мне это сделать? Что вызывает autoNumeric? по щелчку? Я использую nested_form. – Questifer
Я никогда не думал смотреть на документы драгоценных камней. Я только что нашел событие, которое я могу использовать. Я использовал событие inested: fieldAdded, и оно работает так, как ожидалось. – Questifer