7

sto ricevendo l'errore:Verificare che lo script di bootstrap Datepicker ha caricato

Uncaught TypeError: undefined is not a function 

Quando provo a impostare la datepicker:

$('.datepicker').datepicker(); 

Come è possibile determinare se il DatePicker è stato caricato o meno ?

Per essere chiari, non sto usando jQuery UI

+1

non trovi libreria jQuery UI . – Tomanow

+0

@Tomanow Ci scusiamo per la confusione, non sto usando l'interfaccia utente di jQuery, sto usando bootstrap datepicker - http://bootstrap-datepicker.readthedocs.org/en/release/ –

risposta

15

È possibile controllare per vedere se lo script DatePicker è stato caricato utilizzando:

if ($.fn.datepicker) { 
    // ... 
} 

Quindi è possibile richiamare il metodo condizionatamente .datepicker() se lo script è stato caricato:

if ($.fn.datepicker) { 
    $('.datepicker').datepicker(); 
} 

Example Here

In tal modo, l'errore non verrà generato se lo script non è stato caricato.


È anche possibile utilizzare:

if (typeof $().datepicker === 'function') { 
    $('.datepicker').datepicker(); 
} 

Example Here

+0

Brillante! Grazie. Non ero sicuro se ciò sarebbe stato possibile. –

+0

non c'è bisogno di una var, 'if ($. Fn.datepicker) {...}' funziona pure – dandavis

+0

@dandavis Aggiornato, grazie! –

-1

Questo mi ha fermato il caricamento di bootstrap-datepicker più di una volta in tutta modali ..

$.isFunction(Date.today) || $('body').append('<script src="assets/bootstrap-daterangepicker/date.js"><\/script><script src="assets/bootstrap-daterangepicker/daterangepicker.js"><\/script>');     
Problemi correlati