2014-09-11 57 views
2

如何國際化位於的字符串Javascript建立文件時Spring MVC WebApp?如何用Spring I18N國際化Javascript內容?

我使用<spring:message code="label1" />國際化的一些靜態字符串在JSP文件,但對於位於我的js例如文件的錯誤消息?有沒有解決國際化的方法,而不包括jsp文件中的普通js代碼?

我想過要創建一個值列表,每個錯誤一個,並且在頁面刷新時繼續進行ajax調用,這樣我就可以根據變量的值獲得正確的消息,但它是明智的這樣做?!

+0

工作代碼/示例張貼的 – 2014-09-11 08:18:39

+0

可能的複製[解決彈簧:消息以JavaScript爲I18N國際](HTTPS://計算器。 COM /問題/ 6218970 /解決-springmessages式的JavaScript換國際化,國際化) – GKislin 2017-05-24 23:05:32

回答

2

在一些常見的jsp中包含這段代碼,比如header.jsp

<script type="text/javascript"> 
function getSystemLocale() { 
    var systemLocale ='<%=RequestContextUtils.getLocale(request)%>'; 
    return systemLocale; 
} 

function getResource(){ 
    jQuery.i18n.properties({ 
     name:'JS_Messages', 
     path: getContextPath()+'/resource-bundles/JS_Messages/', 
     mode:'both', 
     language:getSystemLocale(), 
     callback: function() { 
      jQuery.i18n.prop('error_message'); 
     } 
    }); 
} 
</script> 

結構將如下所示。它將加載給定路徑中的所有屬性文件,並根據區域設置搜索變量。

記住文件的命名約定,以locale結尾。

需要包括jquery.i18n.properties-min-1.0.9相同。

和簡單地在JavaScript可以訪問key作爲alert(error_occured);

enter image description here