Вы можете создать отдельный файл js только со строками, например ::
var MultilanguageStrings = {
'savingConfirmation': {
'en': 'Do you want to save changes?',
'pl': 'Czy chcesz zapisać zmiany?'
},
'fatalError': {
'en': 'Fatal error occured.',
'pl': 'Wystąpił krytyczny błąd.'
},
'get': function (key, lang) {
if (this[key] === undefined)
return 'Error. There is no such message.';
if (lang == 'en' && this[key]['en'] === undefined)
return 'Error. There is no such message.';
if (this[key][lang] === undefined)
return this.get(key, 'en');
return this[key][lang];
}
};
А чем создать динамически сгенерированный js-файл с информацией о том, какой язык установлен:
var currentLanguage = 'en';
Вы также можете получить эту информацию другим способом (например, AJAX), но решение, приведенное выше, имеет это преимущество: ваш код уже загружен и установлен currentLanguage
.
Тогда в вашем коде вставьте:
...
if (confirm(MultilanguageStrings.get('savingConfirmation', currentLanguage))) {
...
Вы можете захотеть обернуть все в одну глобальную переменную, это было бы более аккуратно.
Также не забывайте перезаписывать метод MultilanguageStrings.get
.