如何在SpringMVC中用javascript显示属性文件中的值
我正在设置message.properties文件中的硬编码消息,例如:“是否确实要删除该消息?” 希望将此消息从message.properties转换为javascript。 请给我建议实现这一目标的方法 例如:如何在SpringMVC中用javascript显示属性文件中的值,javascript,java,html,spring-mvc,Javascript,Java,Html,Spring Mvc,我正在设置message.properties文件中的硬编码消息,例如:“是否确实要删除该消息?” 希望将此消息从message.properties转换为javascript。 请给我建议实现这一目标的方法 例如: BootstrapDialog.show({ message: 'Are you sure you want to '+activeStatus+' this message ?', title: 'Alert' }); func
BootstrapDialog.show({
message: 'Are you sure you want to '+activeStatus+' this message ?',
title: 'Alert'
});
function handleAjaxError(xhr, textStatus, error) {
if (textStatus == 'timeout') {
alert('The server took too long to send the data.');
} else if (textStatus == "parsererror") {
alert("Ajax error occured.");
}
}
查看Spring主题标签: 检索具有给定代码的主题消息,如果代码不是,则检索文本 可解决的。HTML转义标志参与页面范围或 应用程序范围的设置(即通过HtmlEscapeTag或 web.xml中的“defaultHtmlEscape”上下文参数)
在javascript首次初始化之前,您可以进行ajax调用以获取i18n文本,并将它们分配给javascript对象。稍后在js代码中,您可以从中获取文本。当然,您需要一个后端控制器来读取message.properties文件中的文本,并响应ajax请求
您需要在这个ajax请求的回调中加载Java脚本,否则您的文本值将是未定义的。(因为ajax需要一些时间)。编写一个服务,读取所有属性并将Javascript代码写入其输出文件,如 返回的内容应该是 变量属性={ p1:‘值1’, ... };
然后,从带有html脚本标记的页面中包含这些内容。您可以像这样从JSP/JSPF文件中读取资源属性(messages_en.properties)文件
<%@taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt" %>
<fmt:setLocale value="en"/>
<fmt:setBundle basename="messages"/>
<script type="text/javascript">
var activeStatus= '<fmt:message key="activeStatus"/>';
</script>
var-activeStatus='';
或者使用AJAX这是我在JSP页面上使用的,但是我希望同样的事情也发生在js页面上。不要忘记将属性文件放在类路径下,并在使用时包含JSP。我已经按照您建议的方式编写了相同的代码,但它仍然以“???text??”格式显示文本
<%@taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt" %>
<fmt:setLocale value="en"/>
<fmt:setBundle basename="messages"/>
<script type="text/javascript">
var activeStatus= '<fmt:message key="activeStatus"/>';
</script>