我需要从浏览器的语言中获取文化字符串。
我考虑使用以下javascript代码来获取它:
var userLang = navigator.language || navigator.userLanguage;
但是它只给我从.NET中获取的文化信息的第一部分:
Thread.CurrentThread.CurrentCulture.Name;
JavaScript只能给我“de”或“pl”,而不是像.NET一样的“de-DE”或“pl-PL”。 有没有办法获取“完整信息”?
我需要从浏览器的语言中获取文化字符串。
我考虑使用以下javascript代码来获取它:
var userLang = navigator.language || navigator.userLanguage;
但是它只给我从.NET中获取的文化信息的第一部分:
Thread.CurrentThread.CurrentCulture.Name;
JavaScript只能给我“de”或“pl”,而不是像.NET一样的“de-DE”或“pl-PL”。 有没有办法获取“完整信息”?
试一下
<script>
var cultureInfo = '@System.Globalization.CultureInfo.CurrentCulture.Name';
</script>
不完全正确。浏览器没有将此详细信息保留在其DOM中。
您可以在ASP.NET页面中用C#生成 CultureInfo
,方法如下:
<script language="javascript">
var culture = '<%= System.Globalization.CultureInfo.CurrentCulture.Name %>';
var cultureDisplayName = '<%= System.Globalization.CultureInfo.CurrentCulture.DisplayName %>';
// etc
// rest of your JavaScript code
</script>