Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

bootstrap-datepicker set language globally

I'm using bootstrap-datepaginator that inside uses bootstrap-datepicker. Utilizzanto bootstrap-datepicker as a single component, there are no problems to set the language, but the same is not true using bootstrap-datepaginator. How can I do?

I'm trying to set the Italian language as a default for the entire project. In index.html I put the following script:

<script src="vendors/bootstrap-datepicker/js/bootstrap-datepicker.js"></script>
<script src="vendors/jquery-ui/ui/i18n/datepicker-it.js"></script>

<script>
    $(function() {
        $( "#datepicker" ).datepicker( $.datepicker.regional[ "it" ] );
    });
</script>

But in the console I get these errors:

Uncaught TypeError: Cannot read property 'regional' of undefined datepicker-it.js:15
Uncaught TypeError: Cannot read property 'regional' of undefined (index):394

I tried everything but I'm going crazy!

Bootstrap Datepicker i18n


I changed the code in this way:

<script src="vendors/bootstrap-datepicker/js/bootstrap-datepicker.js"></script>
<script src="vendors/bootstrap-datepicker/js/locales/bootstrap-datepicker.it.js"></script>


<script>
    $(function() {
        $.datepicker.setDefaults( $.datepicker.regional["it"] );
    });
</script>

but now the error is as follows:

Uncaught TypeError: Cannot read property 'setDefaults' of undefined

With this fix:

$('.datepicker').datepicker({
    language: "it"
});

I haven't got errors in console but the language is always english by default

like image 358
YoBre Avatar asked Oct 21 '14 13:10

YoBre


2 Answers

You can set default options for Bootstrap Datepicker by assigning them like so:

$.fn.datepicker.defaults.language = 'it';

Example below:

$(document).ready(function(){
     $.fn.datepicker.defaults.language = 'it';
});

$(document).ready(function(){
     $('.datepicker').datepicker();
});
<link href="https://cdn.jsdelivr.net/bootstrap.datepicker-fork/1.3.0/css/datepicker3.css" rel="stylesheet"/>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.0/jquery.min.js"></script>
<script src="https://cdn.jsdelivr.net/bootstrap.datepicker-fork/1.3.0/js/bootstrap-datepicker.js"></script>
<script src="https://cdn.jsdelivr.net/bootstrap.datepicker-fork/1.3.0/js/locales/bootstrap-datepicker.it.js"></script>
<input class="datepicker"/>
like image 127
mccannf Avatar answered Oct 23 '22 17:10

mccannf


Use jQuery's extend() utility method to merge your settings into the datepicker defaults object:

$.extend( $.fn.datepicker.defaults, {format: 'dd-mm-yyyy', language: 'nl'} );
like image 24
Stephan van Hoof Avatar answered Oct 23 '22 17:10

Stephan van Hoof