您好,登錄后才能下訂單哦!
這個是接著上一篇 國際化總結(jié)—關(guān)于Struts2
在做國際化的時候,有時候script腳本中也需要有國際化,所以就用到了jquery的一個包:jquery.i18n
關(guān)于這個包的詳細使用有空在弄,這里只是介紹如何實現(xiàn)js腳本的國際化的一些簡單代碼
直接上代碼了:
首先是加載jquery.i18n的,這個需要隨著頁面的加載馬上就執(zhí)行,就寫在document的onready代碼的最前面吧
function loadProperties(){ /*lan = $("#local_lan").val(); lan = (lan==null||lan.trim()=='')?'en':"zh";*/ var lan = 'zh';//zh,en $.ajax({ type:"POST", url:"getlanguage", dataType:"json", async:false, success:function(json){ lan=json; }, error: function(json){ alert("ERROR!!!\ncontact wuzhongwei@..."); } }); jQuery.i18n.properties({// 加載資瀏覽器語言對應(yīng)的資源文件 name:'msg', // 資源文件名稱 path:'Js/i18n/', // 資源文件路徑 mode:'map', // 用 Map 的方式使用資源文件中的值 language:lan, callback: function() {// 加載成功后設(shè)置顯示內(nèi)容 } }); }
上面的代碼核心部分是使用ajax獲取當前使用的是什么環(huán)境,相關(guān)的Struts2 Action類代碼如下:
public String execute(){ //flag = sysConfig.getLanguage_version(); Locale locale = (Locale) ActionContext.getContext().getSession().get("WW_TRANS_I18N_LOCALE"); if(locale == null){ locale = Locale.US; } if(locale.equals(Locale.US)){ flag = "en"; }else{ flag = "zh"; } return SUCCESS; }
很簡單的一個方法。
這樣當頁面加載的時候就會根據(jù)當前使用的語言環(huán)境去獲取相應(yīng)的配置文件
具體的jquery.i18n的使用有空再詳細說明,包括初始化啊(其實初始化上面的代碼里面就有了),獲取相應(yīng)的資源啊等等
免責聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。