【问题标题】:Get message from spring resource bundle by js通过js从spring资源包中获取消息
【发布时间】:2014-06-16 18:51:42
【问题描述】:

通常我通过 jsp 中的<spring:message code="" /> 标签检索 i18n 消息。但作为 ajax 查询的响应,我在 i18n 属性文件中得到消息代码。这段代码如何通过 JS 获取消息?

【问题讨论】:

标签: javascript spring jsp internationalization


【解决方案1】:

从 JS 获取消息没有“正常”的方式,但你有两种解决方案:

第一个解决方案:通过 Ajax 调用。

第二种解决方案:在隐藏输入 html 中加载页面时发送您的价值

<c:set var="val"><spring:message code="username"/></c:set>
<input id="username" type="hidden" value="${val}"/>

在您的 javascript(使用 jquery)中,您可以按如下方式使用它:

$('#username').val()

【讨论】:

    【解决方案2】:

    您可以将MessageSource 注入您的控制器并从该控制器返回String 消息。简单地说:

    @Autowired
    MessageSource messageSource;
    
    @RequestMapping(value="/myajax", method=RequestMethod.GET)
    @ResponseBody
    public String getMyAjaxMessage() {
        return messageSource.getMessage(..); // use your proper arguments or extract from request parameters
    
    }
    

    javascript(假设使用 jquery):

    $.get('/myajax', function(data){
        // do whatever you want with data (will contain your message)
    });
    

    这里是文档:

    MessageSource

    jquery get

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2017-05-30
      • 2012-07-30
      • 1970-01-01
      • 2011-01-17
      • 2020-03-27
      • 1970-01-01
      • 2013-04-02
      • 1970-01-01
      相关资源
      最近更新 更多