Многоязычное веб-приложение - как я обнаруживаю язык пользователя в ASP.NET?

Вы можете проверить свойство persisted события pageshow. Он установлен на значение false при начальной загрузке страницы. Когда страница загружается из кеша, она имеет значение true.

window.onpageshow = function(event) {
    if (event.persisted) {
        alert("From bfcache");
    }
};

По какой-то причине jQuery не имеет этого свойства в событии. Вы можете найти его из оригинального события.

$(window).bind("pageshow", function(event) {
    if (event.originalEvent.persisted) {
        alert("From bfcache");
    }
});
21
задан SqlRyan 15 June 2009 в 20:16
поделиться

4 ответа

Этот статья (связанный с archive.org, поскольку исходная ссылка является теперь битой) могла бы быть полезной с автоматическим обнаружением установки языка браузера.

[РЕДАКТИРОВАНИЕ] Да. Заключенная в кавычки статья не использует ASP.NET. Этот статья делает.

6
ответ дан 29 November 2019 в 21:06
поделиться

Попробуйте это в web.config:

<globalization culture="auto" uiCulture="auto" />

Это заставит ASP.NET автоматически обнаруживать культуру клиента от заголовка запроса. Можно также установить это на основе на страницу через атрибут Page.

21
ответ дан 29 November 2019 в 21:06
поделиться

Это - большой вопрос как локализация в , ASP.NET пропущен многими разработчиками.

ASP.NET должен автоматически погрузка на настройках браузера пользователя и вызывать CultureInfo.CurrentCulture на язык браузера пользователя. Можно вызвать проблему со строкой в Page_OnInit() как:

Thread.CurrentThread.CurrentCulture = new CultureInfo(HttpContext.Current.Request.UserLanguages[0]);

, Как можно протестировать это? Введите панель языков в наш браузер и измените настройки.

2
ответ дан 29 November 2019 в 21:06
поделиться

Клиент обычно устанавливает Принимать-язык в заголовке Запроса HTTP с количественно выигранным списком предпочтительного языка, традиционно (но не обязательно) в порядке самого привилегированного к наименее привилегированному. Можно проанализировать это, но поскольку Maxam отметил, , ASP.NET действительно имеет механизм для того, чтобы сделать это от Вашего имени.

2
ответ дан 29 November 2019 в 21:06
поделиться
Другие вопросы по тегам:

Похожие вопросы: