我有一个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认识到这个春天:消息?
答案 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>