Extjs实现国际化和jsp实现国际化

时间:2023-01-18 19:46:21

1.Extjs实现国际化:

    首先在extjs中引入两个文件ext-lang-en.js 和 ext-lang-zh_CN.js,也就是说,这两个文件一个是中文的一个是英文的对照表,这两个文件可能在extjs包里面没包含,所以需要自己上网下载:http://download.csdn.net/detail/wangyi201212/8345659,之后在所用到的页面上引用这两个js文件

  <script type="text/javascript" src="../../ext/ext-lang-en.js"></script>

  <script type="text/javascript" src="../../ext/ext-lang-zh_CN.js"></script>

  <script type="text/javascript" src="category.js"></script>   <--此为包含extjs的js页面-->

  在中英文对照表里面要写上自己想要实现国际化的键值对;

  一定要以这种形式写:

   ext-lang-en.js

  var market = {};  
  market.index = {};
  market.index.string = {};
  market.index.string.navigator = 'Navigator';
  market.index.string.exit = 'Exit';
  market.index.string.welcome = "Welcome! ";

 ext-lang-zh_CN.js

 var market = {};  
 market.index = {};
 market.index.string = {}; 
 market.index.string.navigator = '导航';
 market.index.string.exit = '退出';
 market.index.string.welcome = "欢迎您! "

在extjs代码中这样写

west : {
                        id : 'west-panel',
                        region : 'west',
                        title : market.index.string.navigator,//这句即实现国际化,引用到了前面两个的值;
                        split : true,
                        width : 180,
                        minSize : 150,
                        maxSize : 300,
                        margins : '0 3 5 5',
                        iconCls : 'menu-navigation',
                        autoScroll : false,
                        layout : 'accordion',
                        collapsible : true
                    },


2.jsp或html中实现国际化

  原理的话我就不讲了,这篇博文写的不错:http://blog.csdn.net/dengyunze/article/details/167527

  但是这只是一个测试用的,真正如何应用的jsp页面呢:

  a.同过java代码获取ResourceBundle对象

 <%  
       ResourceBundle rb =              ResourceBundle.getBundle("com.gotechcn.property.appmarket",request.getLocale());
      request.getSession().setAttribute("envirment", rb.getString("Enveriment"));
%>

 b.从rb对象中取出设置的值:

<td align="right" height="27"> <%=rb.getString("Username")%> </td>

即可实现