1

こんにちは、私のプロジェクトは struts 2 です。クライアント側の検証用に共通の js ファイルを作成しました。問題は、内部化を実装するために、言語ごとにアラート メッセージを変更する必要があることです。私の質問は、js ファイルのリソース プロパティにアクセスする方法があるということです。または、誰かが同じことの代替案または例を提案します。

4

4 に答える 4

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 に答える
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 に答える
1

母国語の英語をキー、L10N メッセージを値として JSON ファイルを記述し、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 に答える