i18n在javascript中使用.properties文件

时间:2010-07-22 14:21:38

标签: javascript localization properties internationalization alert

我正在使用JSF开发一个Web应用程序,因此我使用Java属性文件(即resources_es_CO.properties)来本地化应用程序的字符串,这样就可以了。

Mi问题是:如何从我的javascript验证中调用此类文件中的本地化字符串,以便警报向用户显示这些本地化字符串?

提前致谢。

2 个答案:

答案 0 :(得分:1)

我所做的就是将邮件作为页面的一部分发送出去,放入隐藏的<span>标签中,其中“id”值来自属性名称。

或者,您可以编写一个名为Ajax的操作并动态获取属性。

要执行ajax回调,您必须实现一个能理解类似属性键的服务器端操作。服务器只应用本地化(即在与会话关联的语言环境中查找属性),然后返回字符串。或者,您可以实现一个服务,该服务返回一整套属性,可能是基于每个表单,或者根据属性名称的某些约定进行分组(例如,“返回以'validation.addressForm'开头的所有属性” )

最简单的情况看起来像jQuery:

$.get('/fetchProperty', { property: 'firstNameMissing' }, function(propValue) {
  $('#errMsg').text(propValue);
}, "text/plain");

其他框架提供类似的ajax工具,或者您可以自己执行XMLHttpRequest。

答案 1 :(得分:0)

您可以通过ajax调用进入服务器,并从服务器向客户端发送警报文本并显示它。或者你可以在渲染jsp时将消息放到你的页面上。两个都没问题。如果您可以在不刷新页面的情况下更改语言,则可能需要进行ajax调用。如果你不能,将消息放入javascript变量将更容易