Tom*_*ora 5 javascript c# asp.net culture cultureinfo
我需要从浏览器的语言中获取文化字符串。
我考虑过从javascript这样获取代码:
var userLang = navigator.language || navigator.userLanguage;
Run Code Online (Sandbox Code Playgroud)
但这只给了我从.NET获得的文化信息的第一部分:
Thread.CurrentThread.CurrentCulture.Name;
Run Code Online (Sandbox Code Playgroud)
因此,javascript为我提供了“ de”或“ pl”,而不是.NET中的“ de-DE”或“ pl-PL”。有没有办法获取“完整信息”?
并不真地。浏览器不会在其 DOM 中保留这些详细信息。
你可以做的是,在你的ASP.NET页面,生成的CultureInfoC#中,像这样:
<script language="javascript">
var culture = '<%= System.Globalization.CultureInfo.CurrentCulture.Name %>';
var cultureDisplayName = '<%= System.Globalization.CultureInfo.CurrentCulture.DisplayName %>';
// etc
// rest of your JavaScript code
</script>
Run Code Online (Sandbox Code Playgroud)
尝试这个
<script>
var cultureInfo = '@System.Globalization.CultureInfo.CurrentCulture.Name';
</script>
Run Code Online (Sandbox Code Playgroud)