Мы только что перешли от использования Materialize к использованию Bootstrap 4, и, будучи абсолютным новичком в Bootstrap, я столкнулся с некоторыми сложностями, пытаясь заставить мою функцию, которая проверяет состояние некоторых флажков на одной из наших страниц, работать.
Вот мой старый код, который работал с Materialize:
HTML:
{{#each relList}}
<div>
<input type="checkbox" id="{{this.eguid}}">
<label for="{{this.eguid}}">{{this.cluster_value}}</label>
</div>
{{/each}}
Я использую Meteor для перебора «relList» и создания флажка для каждого элемента, причем этот флажок имеет тот же идентификатор, что и текущий элемент.
jQuery:
$(document).ready(function () {
//getting eguid on checkbox change
$(":checkbox").change(function () {
var notChecked = [], checked = [];
$(":checkbox").map(function () {
this.checked ? checked.push(this.id) : notChecked.push(this.id);
});
getDetails(checked);
});
})
Здесь я прослушиваю любые изменения флажков и нажимаю идентификатор любого флажка, который изменяется, в массивы notChecked и checked, в зависимости от того, был ли флажок установлен/снят.
Я сделал очевидное изменение классов флажка Materialize на классы Bootstrap, но по какой-то причине моя реализация jQuery, похоже, не работает с ним, независимо от того, что я делаю. Я не уверен, связана ли моя проблема с тем, как я преобразовал HTML, или мне нужно внести некоторые изменения в мой jQuery.
Если бы кто-нибудь мог предложить некоторые идеи о том, как изменить мой HTML/jQuery, чтобы он снова заработал, я был бы признателен.