i18n implementation-jquery

时间:2013-01-23 09:58:35

标签: jquery jquery-plugins internationalization

我的网站包含大量动态HTML

目前,元素的所有标签和工具提示都在.js文件中进行了硬编码,如下所示:

<div class="someClassName" title="Tracked item details">Name of Label</div>

我想要的是,我想创建文件(或仅在客户端类似的东西),而不是硬编码,包含我们在.properties文件(服务器端)中创建的密钥,并使用这些密钥获取值js中的那个键。

目的:如果我想为该特定密钥显示另一条消息,我只需要在一个地方更改密钥的值

2 个答案:

答案 0 :(得分:1)

您可以使用像

这样的js对象/ json对象

var abc = {'key1':'value1','key2':'value2'};

这样你只需要更新上面的对象,只需重新分配你需要它的值。

由于

答案 1 :(得分:0)

尚未找到问题的确切解决方案。但是一个有效的解决方案是我们可以在属性文件(服务器端)中为js定义键值对。在登录应用程序时,我们可以对文档加载执行ajax请求,该请求将返回该属性文件的JSON字符串。现在,将该对象保存在js变量中。并使用此变量访问需要的属性。

<div class="someClassName" title="'+loadPropertyValue("tracking.name.title")+'">'+loadPropertyValue("label.name")+'</div>

function loadPropertyValue(key) {

for(var i = 0; i < propertiesObject.length; i++)
{
  var item = propertiesObject[i];
  if(item[key]) {
      return item[key];
  }
}
}