使用spring:来自JavaScript的消息

时间:2013-05-29 15:25:29

标签: javascript jquery spring call message

我有一个JQuery函数,它动态地在JSP中添加一个Table:

$('#add').click(function(event) {

    event.preventDefault();

$('.tabela_procurador').before
    ('<table id="tabela_nova' + i + '" class="tabela_nova"> ' +
        '<tr> ' +
            '<td colspan="4" class="subTitulo_barra"> ' +
            '<spring:message code="representante_legal" /> '+ i +' ' +
            '</td> ' +
        '</tr> ' +
      '</table>');
     i++
   });
});

但是当我添加这张桌子时,我失去了春天:消息。

我可以做些什么让jquery认识到这个春天:消息?

4 个答案:

答案 0 :(得分:9)

作为解决方法,将消息值放在jsp页面上的隐藏输入中。然后在你的javascript中获取它的价值。在你的情况下:

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

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

$('#representante_legal').val()

答案 1 :(得分:6)

jQuery无法访问spring标记。在将页面发送到客户端之前,spring:message在服务器端处理,稍后在客户端处理javascript / jQuery。

答案 2 :(得分:4)

确保<spring:message code="representante_legal" />在JSP中,如果该标记位于javascript文件中,则永远不会将其转换为本地化字符串。

JSP文件在发送到请求客户端之前进行编译,而javascript则作为静态内容提供。

答案 3 :(得分:2)

在JSP中,您可以将spring:message分配给javascript变量,使其可用于其他jQuery代码:

# In .JSP
<script type="text/javascript">
  var abc="<spring:message code="representante_legal"/>";
</script>