Djov
Estoy usando bootstrap-select para un formulario. Incluyo los scripts (jquery, bootstrap-select) en el encabezado del archivo HTML.
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/bootstrap-select/1.12.2/css/bootstrap-select.min.css">
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.2.1/jquery.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/bootstrap-select/1.12.2/js/bootstrap-select.min.js"></script>
<link rel="stylesheet "type="text/css" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css">
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js"></script>
Todos los elementos seleccionados con la clase “selectpicker” se llamaron correctamente. Ejemplo del elemento seleccionado:
<select id="test" class="selectpicker">
<option>Mustard</option>
<option>Ketchup</option>
<option>Relish</option>
</select>
Sin embargo, si llamo al siguiente script en la misma página
<script>
$(document).ready(
function () {
$('#test').selectpicker('val', 'Relish')
});
</script>
me sale este desagradable error
$(…).selectpicker no es una función
Mirando la pestaña de fuentes en Google Chrome, veo que bootstrap-select.min.js está bien cargado. ¿Alguien tiene sugerencias?
calin vlasin
si tienes otro jquery.js
referencia que se está cargando después bootstrap-select.min.js se borrará $(...).selectpicker
función y otras funciones. Asegúrese de que bootstrap-select.min.js se cargue en último lugar.
-
Esto fue. Jquery se cargó estúpidamente dos veces en mi solución. Muchas gracias, que error de novato.
– Djov
12 de abril de 2017 a las 11:52
-
Intenté esto pero no funcionó … todavía dice Uncaught TypeError: $(…).selectpicker no es una función @Djov
– Khushbu Vaghela
19 de mayo de 2021 a las 13:13
-
Encontré que la solución .selectpicker() está funcionando en document.ready()
– Khushbu Vaghela
20 de mayo de 2021 a las 4:44
DevTheJo
Intenta cargar bootstrap antes de bootstrap-select 😉
<link rel="stylesheet" type="text/css" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css">
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/bootstrap-select/1.12.2/css/bootstrap-select.min.css">
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.2.1/jquery.js"></script>
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/bootstrap-select/1.12.2/js/bootstrap-select.min.js"></script>
Por alguna razón, esto debe llamarse a través de jquery
$("#MyDropDown").selectpicker('render');
Esto (no jquery) genera el error:
mdd = document.getElementById("MyDropDown");
mdd.selectpicker('render');
Me interesa saber por qué.
-
Hola, debido a que SelectPicker es una biblioteca jquery, significa que funcionará y reaccionará solo con los ‘objetos’ de Jquery y no con el elemento ‘real’ seleccionado del dom, si busca mejor, puede encontrar que el elemento devuelto por jquery (usando
$('#elemnt-id')
) es muy diferente dedocument.getElementById("elemnt-id");
.– Hicham O-Sfh
9 de junio de 2021 a las 1:08
-
Gracias @HichamO-Sfh eso tiene sentido.
– Nick.McDermaid
9 de junio de 2021 a las 2:35
De su documentación, también debe incluir bootstrap:
Requires jQuery v1.8.0+, Bootstrap’s dropdown.js component, and Bootstrap's CSS
silviomoreto.github.io/bootstrap-select–Rory McCrossan
12 de abril de 2017 a las 9:06
¿Puedes mostrar un ejemplo en vivo?
– código máximo
12 de abril de 2017 a las 9:09
necesitas incluir cdnjs.cloudflare.com/ajax/libs/bootstrap-select/1.5.4/… también
– Vinod Louis
12 de abril de 2017 a las 9:11
Lamentablemente, este no era el problema. Bootstrap ya estaba incluido en el archivo (vista HTML diferente).
– Djov
12 de abril de 2017 a las 9:41