我正在为Ex设置硬编码消息:“你确定,你想要删除消息吗?” ,在message.properties文件中。
想要将来自message.properties的此消息转换为javascript。 请建议我实现这一目标的方法。
例如:
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.");
}
}
答案 0 :(得分:1)
看一下Spring主题标签:
使用给定代码检索主题消息,如果代码不是,则检索文本 解析。 HTML转义标志参与页面范围或 应用程序范围的设置(即通过HtmlEscapeTag或 " defaultHtmlEscape" web.xml中的context-param)。
<%@ taglib prefix="spring" uri="http://www.springframework.org/tags" %>
<spring:theme code="code.of.your.message" text="Alternative text"/>
答案 1 :(得分:0)
在首次初始化javascript之前,您可以进行ajax调用以获取i18n文本,并将它们分配给javascript对象。稍后在您的js代码中,您可以从中获取文本。当然,您需要有一个后端控制器来读取message.properties文件中的文本,并对您的ajax请求做出响应。
您需要在此ajax请求的回调中加载javascripts,否则您的文本值将是未定义的。 (因为ajax需要一些时间)。
答案 2 :(得分:0)
编写一个读取所有属性的服务,并将Javascript代码写入其输出文件,如。
返回的内容应该像
var properties = { P1:&#39;值1&#39 ;, ... };
之后,在您的网页上加上带有html脚本标记的内容。
答案 3 :(得分:0)
您可以像这样从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>
或使用AJAX