4

我正在使用 jquery i18n 插件(http://code.google.com/p/jquery-i18n-properties/)来国际化放置在 jquery/js 中的消息。我有以下项目结构。

在此处输入图像描述

我在文件夹中有some.js文件,在文件内部我必须引用位于文件夹文件夹中的属性文件。我可以这样做吗?在我放置的文件夹的内部文件夹和. 在两个属性文件中,我都放置了属性。现在我正在尝试按如下方式访问它。但是下面的代码没有得到键的值。. 我是否错误地引用了属性文件?我的属性文件引用正确吗?请帮我。jssome.jspropertiessrc/main/resourcespropertiessrc/main/resourcesMessages.propertiesMessages_en_US.propertiesmyForm.success.msg=SuccessmyForm.success.msginstead of giving value, it is giving the key itself but not the value

JSP代码:

    <script type="text/javascript" src="./public/js/some.js"></script>
    <script type="text/javascript" src="./public/js/jquery.i18n.properties-min-1.0.9.js"></script>

一些.js

jQuery.i18n.properties({
    name:'Messages', 
    path:'properties/',  //as i have properties file in properties folder of src/main/resources 
    mode:'both',
    callback: function() {
    alert("message "+jQuery.i18n.prop('myForm.success.msg'));
}

});
4

3 回答 3

0

我没有尝试,但我认为您应该将*.properties文件放在public/resources目录中。

路径应该是:

jQuery.i18n.properties({
    name:'Messages', 
    path:'../resources/', // changed here 
    mode:'both',
    callback: function() {
    alert("message "+jQuery.i18n.prop('myForm.success.msg'));
}

试试看。

于 2014-09-18T16:46:49.623 回答
0

不幸的是,这行不通。JQuery 插件将始终查找文件webcontent夹中的属性文件。试试这个:

  1. 将这些属性文件复制到您的 webapp 文件夹中,并使用实际路径对其进行测试。例如resources/custom/i18n/[注意-这里我将属性文件放在一个i18n文件夹中,并resourceswebapp]下放置了一个文件夹。这将解决您的问题!

  2. 现在我们可以管理两个文件,但我们真的需要它吗?最简单的做法是将您的文件仅放在src/main/resources文件夹中,但作为构建步骤的一部分,将此属性文件复制到您的第二个位置(即webapp文件夹内)。

于 2015-09-21T20:56:25.200 回答
0

将您的应用程序部署到服务器,例如。Tomcat,然后通过服务器访问页面。问题的根本原因是 html 页面无法跨域访问属性文件。

于 2015-08-25T08:43:34.663 回答