bootstrap-datepicker 全局设置语言

Posted

技术标签:

【中文标题】bootstrap-datepicker 全局设置语言【英文标题】:bootstrap-datepicker set language globally 【发布时间】:2014-12-16 17:46:49 【问题描述】:

我正在使用bootstrap-datepaginator,里面使用了 bootstrap-datepicker。 将 bootstrap-datepicker 作为单个组件使用,设置语言没有问题,但使用 bootstrap-datepaginator 则并非如此。我该怎么办?

我正在尝试将意大利语设置为整个项目的默认语言。 在index.html 我放了以下脚本:

<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>

但在控制台中我收到以下错误:

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

我什么都试过了,但我快疯了!

Bootstrap Datepicker i18n


我是这样改代码的:

<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>

但现在错误如下:

Uncaught TypeError: Cannot read property 'setDefaults' of undefined

有了这个修复:

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

我在控制台中没有出现错误,但默认情况下语言始终是英文

【问题讨论】:

我认为您缺少 jQuery UI 日期选择器的包含 - 您只包含它的本地化内容。 您使用的是引导日期选择器,而不是 jQueryUI。 ***.com/questions/19382189/… 【参考方案1】:

您可以通过如下方式为 Bootstrap Datepicker 设置默认选项:

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

示例如下:

$(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"/>

【讨论】:

谢谢@mccannf!你已经找到解决我问题的方法了!!【参考方案2】:

使用 jQuery 的 extend() 实用方法将您的设置合并到 datepicker 默认对象中:

$.extend( $.fn.datepicker.defaults, format: 'dd-mm-yyyy', language: 'nl' );

【讨论】:

这也为我解决了。谢谢。【参考方案3】:
<script src="/jquery/jquery.ui.datepicker.js" type="text/javascript"></script>
<script src="/jquery/jquery.ui.datepicker-it.js" type="text/javascript"></script>

<script>
$.datepicker.setDefaults( $.datepicker.regional["it"] );

$( "#data" ).datepicker();
</script>

【讨论】:

如果我按照你说的做,我会得到这个错误:Uncaught TypeError: Cannot read property 'setDefaults' of undefined 查看 Rory 评论.. 我没有使用 jquery datepicker 而是 bootstrap -.-

以上是关于bootstrap-datepicker 全局设置语言的主要内容,如果未能解决你的问题,请参考以下文章

使用 bootstrap-datepicker 时如何不显示移动键盘?

清除 bootstrap-datepicker 的值

Bootstrap-datepicker 位于页面的左上角

如何在 Django 应用程序中使用 bootstrap-datepicker?

如何使用 bootstrap-datepicker 更新多个输入

日期 bootsrtap-datatimepicker and bootstrap-datepicker 控件支持中文