easyui日期在未加载easyui-lang-zh_CN.js出现英文的情况下加载中文的方法

      我们有时候在操作easyui的时候本来是加载了easyui-lang-zh_CN.js中文文件包,但是还是出现了英文。使得我们不得埋怨这框架咋这么不好用,其实我们仔细看看这个中文包就会发现里面很多都是重新修改了定义语言的参数。假如我们用jquery初始化加载方法$(function(){//这里是我们自定义的操作方法});这个方法里面的东西执行后发现更本没加载我们的中文下面是我写的datetimebox日期控件js代码:

1
2
3
4
5
6
7
8
9
   $(function () {
       function adddaytimes() {
                $("#ExpireTime").datetimebox("setValue", seprateDateString($("#ReleaseTime").datetimebox("getValue")));
        }
        $("#ReleaseTime").datetimebox({
            onChange: adddaytimes
        });
 
});

 即使我在页面中导入这个中文包:    <script src="../easyui/locale/easyui-lang-zh_CN.js" type="text/javascript"></script>

在表单加载的时候同样会出现英文,纠结了很久最后不得不想起查看这个中文包到底怎么定义的。

我们先打开看看这个中文包文件,到底有什么内容:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
if ($.fn.pagination){
    $.fn.pagination.defaults.beforePageText = '第';
    $.fn.pagination.defaults.afterPageText = '共{pages}页';
    $.fn.pagination.defaults.displayMsg = '显示{from}到{to},共{total}记录';
}
if ($.fn.datagrid){
    $.fn.datagrid.defaults.loadMsg = '正在处理,请稍待。。。';
}
if ($.fn.treegrid && $.fn.datagrid){
    $.fn.treegrid.defaults.loadMsg = $.fn.datagrid.defaults.loadMsg;
}
if ($.messager){
    $.messager.defaults.ok = '确定';
    $.messager.defaults.cancel = '取消';
}
if ($.fn.validatebox){
    $.fn.validatebox.defaults.missingMessage = '该输入项为必输项';
    $.fn.validatebox.defaults.rules.email.message = '请输入有效的电子邮件地址';
    $.fn.validatebox.defaults.rules.url.message = '请输入有效的URL地址';
    $.fn.validatebox.defaults.rules.length.message = '输入内容长度必须介于{0}和{1}之间';
    $.fn.validatebox.defaults.rules.remote.message = '请修正该字段';
 
    $.fn.validatebox.defaults.rules.mphone.message = '请输入11位手机号.';
    $.fn.validatebox.defaults.rules.phone.message = '号码格式010-12345678 ';
}
if ($.fn.numberbox){
    $.fn.numberbox.defaults.missingMessage = '该输入项为必输项';
}
if ($.fn.combobox){
    $.fn.combobox.defaults.missingMessage = '该输入项为必输项';
}
if ($.fn.combotree){
    $.fn.combotree.defaults.missingMessage = '该输入项为必输项';
}
if ($.fn.combogrid){
    $.fn.combogrid.defaults.missingMessage = '该输入项为必输项';
}
if ($.fn.calendar){
    $.fn.calendar.defaults.weeks = ['日','一','二','三','四','五','六'];
    $.fn.calendar.defaults.months = ['一月','二月','三月','四月','五月','六月','七月','八月','九月','十月','十一月','十二月'];
}
if ($.fn.datebox){
    $.fn.datebox.defaults.currentText = '今天';
    $.fn.datebox.defaults.closeText = '关闭';
    $.fn.datebox.defaults.okText = '确定';
    $.fn.datebox.defaults.missingMessage = '该输入项为必输项';
    $.fn.datebox.defaults.formatter = function(date){
        var y = date.getFullYear();
        var m = date.getMonth()+1;
        var d = date.getDate();
        return y+'-'+(m<10?('0'+m):m)+'-'+(d<10?('0'+d):d);
    };
    $.fn.datebox.defaults.parser = function(s){
        if (!s) return new Date();
        var ss = s.split('-');
        var y = parseInt(ss[0],10);
        var m = parseInt(ss[1],10);
        var d = parseInt(ss[2],10);
        if (!isNaN(y) && !isNaN(m) && !isNaN(d)){
            return new Date(y,m-1,d);
        } else {
            return new Date();
        }
    };
}
if ($.fn.datetimebox && $.fn.datebox){
    $.extend($.fn.datetimebox.defaults,{
        currentText: $.fn.datebox.defaults.currentText,
        closeText: $.fn.datebox.defaults.closeText,
        okText: $.fn.datebox.defaults.okText,
        missingMessage: $.fn.datebox.defaults.missingMessage
    });
}

 上面可以看出这个js文件里面并没有什么东西,很简单的,就是一些自定义参数并设置为中文。接下来就简单了,我们可以把引用到的控件语言设置函数放到初始化方法中即可。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
$(function () {
     if ($.fn.calendar) {
         $.fn.calendar.defaults.weeks = ['日', '一', '二', '三', '四', '五', '六'];
         $.fn.calendar.defaults.months = ['一月', '二月', '三月', '四月', '五月', '六月', '七月', '八月', '九月', '十月', '十一月', '十二月'];
     }
     if ($.fn.datebox) {
         $.fn.datebox.defaults.currentText = '今天';
         $.fn.datebox.defaults.closeText = '关闭';
         $.fn.datebox.defaults.okText = '确定';
         $.fn.datebox.defaults.missingMessage = '该输入项为必输项';
         $.fn.datebox.defaults.formatter = function (date) {
             var y = date.getFullYear();
             var m = date.getMonth() + 1;
             var d = date.getDate();
             return y + '-' + (m < 10 ? ('0' + m) : m) + '-' + (d < 10 ? ('0' + d) : d);
         };
         $.fn.datebox.defaults.parser = function (s) {
             if (!s) return new Date();
             var ss = s.split('-');
             var y = parseInt(ss[0], 10);
             var m = parseInt(ss[1], 10);
             var d = parseInt(ss[2], 10);
             if (!isNaN(y) && !isNaN(m) && !isNaN(d)) {
                 return new Date(y, m - 1, d);
             } else {
                 return new Date();
             }
         };
     }
     if ($.fn.datetimebox && $.fn.datebox) {
         $.extend($.fn.datetimebox.defaults, {
             currentText: $.fn.datebox.defaults.currentText,
             closeText: $.fn.datebox.defaults.closeText,
             okText: $.fn.datebox.defaults.okText,
             missingMessage: $.fn.datebox.defaults.missingMessage
         });
     }
 
     function adddaytimes() {
             $("#ExpireTime").datetimebox("setValue", seprateDateString($("#ReleaseTime").datetimebox("getValue")));
     }
     $("#ReleaseTime").datetimebox({
         onChange: adddaytimes
     });
 
 });

 点击表单查看,由原来的英文变成了中文。希望遇到这样问题的同学,可以帮助到你。还有更好的方法大家可以分享分享。

 

posted @   Angelasp  阅读(4212)  评论(0编辑  收藏  举报
编辑推荐:
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
阅读排行:
· 周边上新:园子的第一款马克杯温暖上架
· 分享 3 个 .NET 开源的文件压缩处理库,助力快速实现文件压缩解压功能!
· Ollama——大语言模型本地部署的极速利器
· DeepSeek如何颠覆传统软件测试?测试工程师会被淘汰吗?
· 使用C#创建一个MCP客户端
点击右上角即可分享
微信分享提示