Is there a way I can set the user locale automatically based on the user windows/linux OS settings?
Today I need to explicitly include the relevant js.
Thanks,
Is there a way I can set the user locale automatically based on the user windows/linux OS settings?
Today I need to explicitly include the relevant js.
Thanks,
有很多方法可以自动检测用户区域设置,但我不知道任何完美的解决方案。一切都取决于您的确切要求。例如可以使用navigator.language || navigator.browserLanguage
. 例如,您将获得字符串"en-US"
。功能请求的旧演示演示了.navigator.language || navigator.browserLanguage
用户仍然可以在 Web 浏览器的设置中使用其他语言首选项:
因此 Web 浏览器将Accept-Language
在对服务器的 HTTP 请求中包含标头:
Accept-Language: de,en-GB;q=0.8,en;q=0.6,en-US;q=0.4,ru;q=0.2,ja;q=0.2
用户使用的不同网络浏览器中的设置可能不同
因此,我建议您为用户提供一些<select>
手动选择的可能性(例如一个元素)。
检测到语言后,您需要验证是否已经加载了相应的语言。$.jgrid.locales
您可以测试是否已经在( if ($.jgrid.locales[locale] !== undefined)
)中定义了相应的语言属性。如果未定义,则必须动态加载相应的 JavaScript 文件。您可以另外测试 的值$.jgrid.defaults.locale
。该值将在每个语言环境文件中设置。So$.jgrid.defaults.locale
为您提供有关上次加载的语言环境文件和免费 jqGrid 的默认语言环境的信息。locale
在创建网格期间仍然可以明确指定。有关其他信息,请参阅文章。