Javascript culture always en-us

Posted by LoveMeSomeCode on Stack Overflow See other posts from Stack Overflow or by LoveMeSomeCode
Published on 2010-06-09T00:30:26Z Indexed on 2010/06/09 0:32 UTC
Read the original article Hit count: 240

I'm not sure if I understand this code or if I'm using it right, but I was under the impression that in an ASP.NET 2.0 AJAX website I could run javascript like:

var c = Sys.CultureInfo.CurrentCulture

and it would give me the culture/language settings the user had specified in their browser at the time of the visit. However, for me, it always comes back 'en-US' no matter what language I pick in firefox or IE.

This serverside code however:

string[] languages = HttpContext.Current.Request.UserLanguages;

if (languages == null || languages.Length == 0)
   return null;

try
{
   string language = languages[0].ToLowerInvariant().Trim();
   return CultureInfo.CreateSpecificCulture(language);
}
catch (ArgumentException)
{
    return null;
}

does return the language I have currently set. But I need to do this clientside, because I need to parse a string into a datetime and do some validations before I postback, and the string could be a MM/DD/YYYY or DD/MM/YYYY, or some other such thing.

What am I missing?

© Stack Overflow or respective owner

Related posts about c#

Related posts about ASP.NET