Я работаю с виджетом jquery UI
с именем checkboxradio , потому что мне интересно, какую эстетику они предлагают без флажка, как если бы это была кнопка.
Я проблема Имеется в том, что мне нужно динамически создавать флажки, потому что в зависимости от информации в моей базе данных, будет один или другой. В частности, проблема в том, что я могу создать нужный флажок без проблем, но стиль виджета к ним не применяется. То есть они появляются на моей странице, но выходят в формате по умолчанию. Может ли кто-нибудь помочь мне сказать, если я импортирую что-то неправильно или называю это неправильно, et c?
Ниже приведен мой код. Я адаптировал его, создав один флажок, потому что единственное отличие состояло бы в том, что он будет иметь oop, который создает более или менее флажки, такие же, как сейчас, но с другими именами.
function printNodeFilters(nodes) {
$("#legend_filtro_datos").after('<label for="checkbox-2">tracker 1</label>');
$("#legend_filtro_datos").after('<input type="checkbox" name="TRACKER1" id="checkbox-2">');
}
// MAIN
$(document).ready(function() {
printNodeFilters();
});
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<!-- *** WIDGET *** -->
<!-- <link rel="stylesheet" href="/resources/demos/style.css"> -->
<!-- <script src="https://code.jquery.com/jquery-1.12.4.js"></script> -->
<link rel="stylesheet" href="//code.jquery.com/ui/1.12.1/themes/base/jquery-ui.css">
<script src="https://code.jquery.com/ui/1.12.1/jquery-ui.js"></script>
<script>
$(function() {
$("input").checkboxradio({
icon: false
});
});
</script>
<!-- ****** -->
<div class="col-2" id="filter_container">
<!-- FILTROS-->
<legend>Filtros mapa: </legend>
<label for="radio_ult_pos">Última posición</label>
<input type="radio" name="radio_select" class="filtros_mapa" id="radio_ult_pos" checked>
<label for="radio_ruta">Ruta</label>
<input type="radio" name="radio_select" class="filtros_mapa" id="radio_ruta">
<legend id="legend_filtro_datos">Filtros datos: </legend>
<!-- AQUÍ IRÍAN LOS CHECKBOX -->
<button type="button" class="btn btn-success" id="filtrar_btn_map">Filtrar</button>
</div>
Я не совсем понимаю, что произойдет, потому что, если я создаю это способом c непосредственно в моем html
, проблем нет, это выглядит и работает отлично. Это заставляет меня думать, что в моем js
файле, возможно, мне нужно вызвать виджет или что-то еще, но я не знаю, что.
Это будет функциональный код, если вы создадите что-нибудь для js,
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<!-- *** WIDGET *** -->
<!-- <link rel="stylesheet" href="/resources/demos/style.css"> -->
<!-- <script src="https://code.jquery.com/jquery-1.12.4.js"></script> -->
<link rel="stylesheet" href="//code.jquery.com/ui/1.12.1/themes/base/jquery-ui.css">
<script src="https://code.jquery.com/ui/1.12.1/jquery-ui.js"></script>
<script>
$(function() {
$("input").checkboxradio({
icon: false
});
});
</script>
<!-- ****** -->
<div class="col-2" id="filter_container">
<!-- FILTROS-->
<legend>Filtros mapa: </legend>
<label for="radio_ult_pos">Última posición</label>
<input type="radio" name="radio_select" class="filtros_mapa" id="radio_ult_pos" checked>
<label for="radio_ruta">Ruta</label>
<input type="radio" name="radio_select" class="filtros_mapa" id="radio_ruta">
<legend id="legend_filtro_datos">Filtros datos: </legend>
<label for="checkbox-2">tracker 1</label>
<input type="checkbox" name="TRACKER1" id="checkbox-2">
<button type="button" class="btn btn-success" id="filtrar_btn_map">Filtrar</button>
</div>
Как вы можете видеть, во втором примере он хорошо создан. Так как же может случиться так, что при выполнении добавления не работает, если я скопировал и вставил тот же код? Я добавляю неправильно? Мне нужно вызвать функцию в моем js
после печати флажка?
Надеюсь, я хорошо объяснил, большое спасибо.