это мой код в index.htmli18next Ошибка загрузки JSON (404 Not Found)
<html>
<head>
<meta http-equiv="content-type" content="text/html; charset=ISO-8859-1"/>
<script src="javascript/jquery-1.11.1.min.js" type="text/javascript"></script>
<script src="javascript/i18next-1.7.4.js" type="text/javascript"></script>
<title>i18next test</title>
</head>
<body>
<p id="id001" data-i18n="first_data">first</p>
</body>
<script type="text/javascript">
$(document).ready(function(){
language_complete = navigator.language.split("-");
language = (language_complete[0]);
i18n.init({
lng: language,
resGetPath: 'locales/__lng__.json',
fallbackLng: "en",
}, function(){
$("first_data").i18n();
});
});
</script>
</html>
И я создал 2 JSon файл в том же каталоге с index.html
locales/en.json
locales/de.json
JSON содержимое файла:
{
"first_data": "de-first-data"
}
Firefox попытается загрузить de.json и en.json, но получаю ошибку 404.
У вас есть идеи, почему i18next не может загрузить json-файл.
Это моя структура папок ниже:
index.html
locales/de.json
locales/en.json
javascript/i18next-1.7.4.js
javascript/jquery-1.11.1.min.js
Спасибо, драк за помощь. Json-файл может быть правильно загружен настройкой IIS для поддержки json. Я попытался заменить '$ ("first_data"). I18n();' to '$ ("# first_data"). i18n();' и '$ ('. i18n '). i18n();' Но данные data-i18n по-прежнему не могут быть заменены переводом в соответствующем файле, отличном от EN json. – ybdesire
Вы должны использовать правильный селектор, элемент, который вы хотите перевести, имеет id 'id001', поэтому $ ("# id001"). I18n() будет правильным вызовом для этого случая. – drax
Отлично! Меня устраивает. Большое спасибо за помощь, дракс! – ybdesire