2013-08-13 6 views
10

jquery mobileを使用して登録フォームを実装しました。ユーザーはドイツ語、英語、フランス語のいずれかでこのフォームを記入することができます。各言語でフォームを表示するために複数の内部ページがあります。ユーザーは、メニューボタンを使用して好みの言語を選択します。jqueryをローカライズするにはどうすればよいですか?

私はjquery validateプラグインを使用してクライアント側のフォーム検証を処理しています。これはうまく動作します..私はどのように各言語のページのフォームの正しいエラーメッセージを有効にするのだろうか? githubからプラグインをダウンロードすると、すべてのローカライゼーションエラーコードが含まれていますが、有効にする方法がわかりません。

各言語ページのフォーム検証の実装を処理するために使用しているJavaScriptコードです。あなたはドイツ語&フランス語ページの右のエラーメッセージを有効にするために私を助けることができる場合

おかげ..

$(document).on("pageshow", "#page_deutsch", function() { 

$("#register_deutsch").validate(); 

}); 

$(document).on("pageshow", "#page_english", function() { 

$("#register_english").validate(); 

}); 

$(document).on("pageshow", "#page_francais", function() { 

$("#register_francais").validate(); 

}); 

答えて

20

jQueryの検証プラグインのローカライズ jQueryの検証プラグインのデフォルトの言語は英語です。 ローカリゼーションjsファイルで上書きすることができます。 es、zh、frなど サポートされている言語のリストについては、hereを参照してください。

言語サポートを有効にするには、他の言語のメッセージjをWebページ(html/jsp/xhtml)に追加するだけです。他の言語のための同じ中国

<script type="text/javascript" src="http://jzaefferer.github.io/jquery-validation/localization/messages_zh.js" /> 

フランス

<script type="text/javascript" src="http://jzaefferer.github.io/jquery-validation/localization/messages_fr.js" /> 

ため は、単に適切な言語JSを見つけて、ウェブページにJSを追加します。

必要な言語がリストにない場合は、messages_xx.jsのコピーをプロジェクトワークスペースにダウンロードし、必要な言語に変更してください。

言語はjsですが、問題は1つのWebページにありますが、1種類の言語メッセージしか使用できません。ウェブページに複数の言語メッセージjがある場合は、最後のものが使用されます。

この問題を解決するために、システムロケールによってメッセージjsを動的に読み込むことができます。

<script type="text/javascript" src="http://jzaefferer.github.io/jquery-validation/localization/messages_<%= Locale.getDefault().getLanguage() %>.js" /> 

上記の解決策を使用して、異なるシステムロケールによって異なる言語メッセージを動的に処理することができます。

リソースバンドルで複数の言語を処理する別の方法があります。

関連のjQueryの検証記事:JSFでjQueryの検証プラグインの使用

  • メール
  • クレジットカード
  • 複数のフォームフィールド
  • エラーメッセージのカスタマイズ
  • 多言語のエラーメッセージ
  • のエラー処理jQuery検証プラグイン

完了!

+1

この回答は、「ここ」という言葉で言及されたリンクが追加された場合に役立ちます。 –

+1

これらのリンクは壊れています=( –

+6

これはhttp://www.kianworknotes.com/2013/05/jquery-validation-plugin-localization.htmlから直接コピーされています。テキストをコピーする場合は、ソースを参照してください。 – Patrick

0