Многоязычные оповещения в JavaScript - PullRequest
2 голосов
/ 01 ноября 2009

У меня есть многоязыковое веб-приложение php, У меня есть переменная php, которая может сказать текущий язык веб-приложения,

Мне нужно проверить вводимые пользователем данные на стороне клиента, а сообщения об ошибках отображаются с предупреждениями JavaScript

например, если переменная языка php "french", мне нужно предупреждение как "bonjour" если переменная языка php «english», мне нужно предупреждение «hello»

любые идеи

Ответы [ 3 ]

9 голосов
/ 01 ноября 2009

Используйте свое собственное пространство имен

en.js

MyApp.lang = {
    greeting: "Hello",
    warning: "Attention"
};

de.js

MyApp.lang = {
    greeting: "Hallo",
    warning: "Achtung"
};

Используйте его как alert(MyApp.lang.greeting), затем в зависимости от вашей переменной php включите правильный файл .js в заголовок

1 голос
/ 25 октября 2016

Самый простой способ реализовать эту функцию -

.
var userLang = "<?php echo 'en-Us'; ?>"; 
var Langauges={

"en-US":{
"HelloWorld":'Hi this is Us English'
},
"en-EG":{
"HelloWorld":'Hi this is en English'
},
"en-AU":{

"HelloWorld":'Hi this is Au English'
}
}

alert(Langauges[userLang]["HelloWorld"] )
1 голос
/ 01 ноября 2009

Создайте своего рода словарь / массив для каждого языка, который вы поддерживаете, и в зависимости от того, какой из них, включите соответствующий файл или выложите соответствующую часть в словаре.

<?php $lang = 'fr'; ?>
<script>
messagesDictionary = {
    en: {
    message:'Hi'
    },

    fr: {
    message:'Bonjour'
    }

}

alert( messagesDictionary['<?php echo $lang;?>']['message'] );
</script>
...