i18n в JavaScript с использованием файла .properties - PullRequest
3 голосов
/ 22 июля 2010

Я занимаюсь разработкой веб-приложения с помощью JSF, поэтому я использую файл свойств Java (т.е. resources_es_CO.properties) для локализации строк для приложения, и это работает нормально.

Mi вопрос: как я могу вызывать локализованные строки в файлах такого типа из моих проверок JavaScript, чтобы предупреждения отображали эти локализованные строки пользователю?

Заранее спасибо.

Ответы [ 2 ]

1 голос
/ 22 июля 2010

Что я делаю, так это отправляю сообщения как часть страницы, помещенную в скрытые теги <span> со значениями "id", сделанными из имен свойств.

В качестве альтернативы, вы можете написать Ajax-вызываемое действие и получить свойства динамически.

Чтобы выполнить обратный вызов ajax, вам нужно реализовать действие на стороне сервера, которое бы понимало что-то вроде ключа свойства. Сервер просто применяет локализацию (т. Е. Ищет свойство в локали, связанной с сеансом), а затем возвращает строку. В качестве альтернативы вы могли бы реализовать сервис, который возвращал бы весь набор свойств, возможно, для каждой формы или сгруппировал в соответствии с некоторыми соглашениями об именах свойств (например, «вернуть все свойства, которые начинаются с validation.addressForm») )

Самый простой случай выглядел бы примерно так с jQuery:

$.get('/fetchProperty', { property: 'firstNameMissing' }, function(propValue) {
  $('#errMsg').text(propValue);
}, "text/plain");

Другие платформы предоставляют аналогичные инструменты ajax, или вы можете сделать запрос XMLHttpRequest самостоятельно.

0 голосов
/ 22 июля 2010

Вы можете перейти на сервер с помощью вызова ajax и отправить текстовые оповещения с сервера клиенту и показать его.или вы можете размещать сообщения на своей странице, когда ваш JSP рендерится.оба в порядке.если вы можете изменить язык без обновления страницы, вы, вероятно, захотите сделать ajax-вызов.если вы не можете, помещать сообщения в переменные javascript будет проще

...