Jquery.i18n使用技巧(一)

摘要:
最近第一次使用i18n插件,很好用,方法很简单。我就不介绍什么i18n的来历了,自己百度。直接说使用方法:1.从官网获取到jquery.i18nhttps://code.google.com/p/jquery-i18n-properties/downloads/list2.配置目录如下:引入i18n即可,这里注意两点:1.引入jquery库必须在之前引入2.默认状态有一个path的properties,不加的话,会出现404错误3.页面加入选择项select1234中文5英文674.获取到value存入session5.app.post;$.change;上面是服务器代码,下面是界面代码6.配置i18njQuery.i18n.properties;至此大功告成。

最近第一次使用i18n插件,很好用,方法很简单。我就不介绍什么i18n的来历了,自己百度。直接说使用方法:

1.从官网获取到jquery.i18n

https://code.google.com/p/jquery-i18n-properties/downloads/list

2.配置目录如下:

Jquery.i18n使用技巧(一)第1张

引入i18n即可,这里注意两点:1.引入jquery库必须在之前引入 2.默认状态有一个path的properties,不加的话,会出现404错误

3.页面加入选择项select

1  <li><a><%= value %></a></li>
2                 <li style="padding:14px !important;">
3                     <select name='selectLang' id="changeLang">
4                         <option value='1'>中文</option>
5                         <option value='2'>英文</option>
6                     </select>
7                 </li>

4.获取到value存入session(加载语言配置文件,页面会重载,必须持久化保存数据)

5.

  app.post('/change-lang',function(req, res){
        var valueLang =req.body.valueLang;
        console.log(valueLang);
        var valueLang =req.body.valueLang;
        if(valueLang == 1 || valueLang == 2) {
            req.session.valueLanguage =valueLang;
            res.send({
                state:"0000",
                msg:"success"});
        }
        else{
            res.send({
                state: "0001",
                msg: "fail"});
        }
    });


 $('#changeLang').change(function() {
        var item = $('#changeLang').val();
        $.ajax(
            {
                type: 'post', //提交方式 get/post
                url: '/change-lang', //需要提交的 url
data:{valueLang: item},
                success: function(data) {
                    window.location.href = '';
                }
            }
        );
        /*$.post('/change-lang', {valueLang: item}, function (data) {
            window.location.href = 'https://tool.4xseo.com/article/129931.html';
        });*/});

上面是服务器代码,下面是界面代码

6.配置i18n

 jQuery.i18n.properties({//加载浏览器选择语言对应的资源文件
            name: page_name, //需爱加载的资源文件名称
            path: '../i18n/', //资源文件路径
            mode: 'map', //用Map的方式使用资源文件中的key值
            language: 'zh',//语言类型zh或者en
            callback: function() {
                var arr = $("[id^=" + page_name + "]");
                for (var i = 0; i < arr.length; i++) {
                    var tempID =arr[i].id;
                    $('#' +tempID).html($.i18n.prop(tempID));
                }
            }
        });

至此大功告成。

另外有一点需要注意,因为页面重载以后select会被刷新,与这时候双语就不能触发change事件;

解决方法:

1 document.getElementById("changeLang").value = valueLang;

每个页面配置这句话,进行修改,不知道什么原因,使用jquery筛选不到这个。

遗留问题,切换语言包后,页面显示出现问题,不同语言的显示长度不同。目前还未解决

免责声明:文章转载自《Jquery.i18n使用技巧(一)》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇Jenkins运行shell脚本权限解决办法Kafka入门教程(转)下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

随便看看

Spark 数据读取与保存(输入、输出)

SaveAsTextFile(字符串)scala&gt:importsscala.util.parsing.json.json(2)将json文件上载到HDFS[lxl@hadoop102spark]$hadoopfs投入。/示例/src/main/resources/people。json/(3)读取文件scala&gt;...

winform中 跨线程启动UI

C#的winform程序中,是不可以从UI窗口主线程之外的线程去直接操作窗口控件的。确切的解释是,不能从创建控件的线程以外的线程去处理控件的操作,比如修改属性等。方法二,通过Control.Invoke调用委托的方式来执行。...

「雕爷学编程」Arduino动手做(26)——4X4矩阵键盘模块

37款传感器与模块的提法,在网络上广泛流传,其实Arduino能够兼容的传感器模块肯定是不止37种的。108种传感器模块系列实验实验二十六:4X4矩阵键盘模块矩阵键盘是单片机外部设备中所使用的排布类似于矩阵的键盘组。工作原理矩阵键盘又称为行列式键盘,它是用4条I/O线作为行线,4条I/O线作为列线组成的键盘。矩阵键盘所需库文件在ArduinoIDE1.8.0...

SpringBoot入门 (三) 日志配置

上一篇博客文章记录了在spring-boot项目中读取的属性文件中配置的属性。本文将学习如何登录springboot项目。SpringBoot在内部使用CommonsLogging进行日志记录,但它也为其他日志记录框架提供默认配置,如JavautilLogging、Log4j2和Logback。在每种情况下,日志记录器都预先配置为使用控制台输出和可选文件输出...

如何给LINUX红帽子版本配置IP(转)

如果需要绑定另一个IP地址,只需在文件名中添加一个,并在文件中的DEVICE中添加eth0:x。LINUX可以支持多达255个IP别名,多个网卡绑定到一个IP地址,并且可以使用多个网卡创建具有相同IP地址的虚拟网卡。事实上,这种技术已经存在于Sun和Cisco中,它们分别被称为中继和以太网信道技术。在Linux中,这种技术被称为绑定。...

戴尔服务器R740-iDRAC管理卡远程安装系统

Dell服务器R740 iDRAC管理卡安装系统1.方案部署:1.服务器配置名称配置备注CPU 2核心内存128GSwap=128G硬盘2T*8RAID5=12T II。设置iDRAC管理卡地址和连接:iDRAC功能默认关闭,需要在BIOS中启用。由于这是一项测试,默认情况下使用浏览器(Google浏览器)访问iDRAC管理地址,Calvin可以在此处设置新...