从javascript访问messages.properties值

时间:2014-03-26 05:16:36

标签: javascript grails gsp

我的JavaScript文件x.js

上有这样的代码
alert("<spring:message code='plants.selectedPlant.name' javaScriptEscape='true' />");

在文件messages.properties中,我有一行:

plants.selectedPlant.name = Roses

但它只是警告文本<spring:message code='plants.selectedPlant.name' javaScriptEscape='true' />而不是值。

我没有在我的JS文件中导入任何内容。

2 个答案:

答案 0 :(得分:1)

一个有用的技巧是做这样的事情:

HTML

<span id="selectedPlantName" display="none">
    <spring:message code='plants.selectedPlant.name' javaScriptEscape='true' />
</span>

JS(假设你使用jQuery)

alert($("#selectedPlantName").text());

或者

看看这个问题中接受的答案:

Resolving spring:messages in javascript for i18n internationalization

答案 1 :(得分:0)

Pedro提供的答案很好(我赞成),但我认为这不是最干净的解决方案,因为您定义了一个带有id,display等的范围,只是为了稍后访问该值。想象有20条消息-这将是很多不必要的代码。我会保持简单并使用普通的JavaScript:

{
   "test":"/\\.scss$/",
   "use":[
      "style-loader",
      "MiniCssExtractPlugin.loader",
      {
         "loader":"css-loader",
         "options":{
            "minimize":true,
            "sourceMap":true
         }
      },
      {
         "loader":"sass-loader"
      }
   ]
},