如何在JavaScript中使用LCID String形式LCID?

时间:2014-06-18 09:51:58

标签: javascript dynamics-crm crm microsoft-dynamics

我正在为CRM 2011和2013开发,我想获得用户的语言。我可以执行的唯一命令是Xrm.Page.context.getUserLcid(),它给出了语言ID,如美国英语的1033。 但是,我想拥有LCID字符串,就像'en-US'一样。 有没有办法在JavaScript中获得这个?也许CRM中的默认功能? 还有一种方法可以获得CRM中安装的所有语言吗?

3 个答案:

答案 0 :(得分:1)

我创建了一个JavaScript库来处理您的需求(从十进制lcid值返回文化名称)

映射来自此页面:National Language Support (NLS) API Reference(Windows 7)

实际上在库内部有JSON对象,其中包含值和两个获取它们的方法。

您可以在我的博客上找到更多信息:

LCID JavaScript Helper Library

答案 1 :(得分:0)

要获取已安装语言的列表,请重新检查this article 关于语言代码的转换 - 我相信您需要编写转换函数,如:

function GetLocale(languagecode){
if (languagecode == 1033){
return "en-US";
}
else if (languagecode == 1064){
return "ua-UA";
}
else {
return "not found!";
}
}

答案 2 :(得分:0)

您至少可以在CRM2016中从变量USER_LANGUAGE_TWO_LETTER_NAME获取语言,也可能是在旧版本中。

在WebResource中,您需要确保首先进入顶部窗口,例如:

    var root = window.parent;
    while (root.frameElement !== null) {
      root = root.parent;
    }
    var lang = root.USER_LANGUAGE_TWO_LETTER_NAME
相关问题