嗨,我的项目在 struts 2 中。我们已经编写了用于客户端验证的通用 js 文件。现在的问题是,要实现内部化,我们必须根据语言更改警报消息。所以我的问题是有什么方法可以访问 js 文件中的资源属性。或任何人建议一些替代方案或示例。
问问题
12905 次
4 回答
2
您可以使用我创建的messageResource.js库读取 js 文件中的属性文件。
1) 在您的 html 中包含 messageResource.js。
<script src="messageResource.min.js"></script>
2)您可以从js访问属性文件的键值对,如下所示。
// initialize messageResource.js with settings
messageResource.init({
// path to directory containing message resource files(.properties files),
// give empty string or discard this configuration if files are in the
// same directory as that of html file.
filePath : 'path/messageresource/'
});
// will load the file 'path/messageresource/moduleName_en_US.properties'
// and callbackFunction will be executed when loading is complete.
messageResource.load('moduleName', callbackFunction, 'en_US');
// use messageResource.get function to get values from loaded file.
var value = messageResource.get('key', 'moduleName', 'en_US');
于 2014-08-29T18:06:09.090 回答
2
将警报消息存储在 js 文件中,文件名如下
alert_en.js alert_fr.js alert_jp.js
在每个文件中存储这样的警报
var ALERT_EMAIL_INCORRECT = "Incorrect email";
var ALERT_USERNAME_INCORRECT = "Incorrect username";
根据用户语言包含文件。
或者
您可以使用 JSP 文件和页面中的链接从资源包中加载消息,如下所示。
<script type="text/javascript" src="YOUR-FILE.JSP"></script>
在这个 JSP 文件中,您从资源包中读取后输出 JavaScript。
也检查一下。
于 2012-07-13T16:34:02.190 回答
1
您可以编写一个JSON文件,以英语为key,L10N消息为value,并根据用户的浏览器语言配置使用AJAX加载相关的JSON,并通过alert(tanslatedTable[USER_LANG][ENGLISH_STRING])来提醒消息
于 2012-07-13T16:00:32.280 回答
0
我在jsp页面上的脚本标签中的javascript中执行此操作:
<code>
alert("<s:text name="amountMustBeNumeric"/>");
</code>
对我来说很好。
于 2012-07-13T21:06:27.260 回答