none
如何通过code实现语言切换的功能? RRS feed

  • 问题

  • 我想实现点击一个LinkButton实现语言的切换,比如从英文切换成中文,我的应用程序页中用了Resource String,添加了英文和中文的资源文件,如何实现类似Sharepoint默认页面的右上角的Select Display Language的功能?请遇到过解决过该问题的老师,给出解决方案或者一些建议,谢谢了。

    2011年11月7日 8:41

答案

  • 您好,BruceZhao,

    首先“选择显示语言”选项影响的只是当前用户在当前浏览器的操作。并不能影响到所有的用户。其他用户默认打开的还是网站的默认语言。

    其次,你可以尝试使用以下的JavaScript代码实现语言的切换:(页面放一个HTML Form Web 部件,代码拷贝过去)

    <script type ="text/javascript">
    // <![CDATA[
    function ChangeMUI(value)
    {
    	var today = new Date();
    	var oneYear = new Date(today.getTime() + 365 * 24 * 60 * 60 * 1000);
    	var url = window.location.href;
    	document.cookie = "lcid=" + value + ";path=/;expires=" + oneYear.toGMTString();
    	window.location.href = url;
    }
    // ]]>
    </script>
    <a href="javascript:ChangeMUI(2052)">chinese</a>&nbsp;|&nbsp;<a href="javascript:ChangeMUI(1033)">English</a>
    
    http://www.n8d.at/blog/sharepoint-2010/change-language-of-ui-using-custom-control/

    • 已编辑 Wayne Fan 2011年11月8日 1:41
    • 已标记为答案 BruceZhao 2011年11月11日 1:18
    2011年11月8日 1:40

全部回复

  • 您好,BruceZhao,

    首先“选择显示语言”选项影响的只是当前用户在当前浏览器的操作。并不能影响到所有的用户。其他用户默认打开的还是网站的默认语言。

    其次,你可以尝试使用以下的JavaScript代码实现语言的切换:(页面放一个HTML Form Web 部件,代码拷贝过去)

    <script type ="text/javascript">
    // <![CDATA[
    function ChangeMUI(value)
    {
    	var today = new Date();
    	var oneYear = new Date(today.getTime() + 365 * 24 * 60 * 60 * 1000);
    	var url = window.location.href;
    	document.cookie = "lcid=" + value + ";path=/;expires=" + oneYear.toGMTString();
    	window.location.href = url;
    }
    // ]]>
    </script>
    <a href="javascript:ChangeMUI(2052)">chinese</a>&nbsp;|&nbsp;<a href="javascript:ChangeMUI(1033)">English</a>
    
    http://www.n8d.at/blog/sharepoint-2010/change-language-of-ui-using-custom-control/

    • 已编辑 Wayne Fan 2011年11月8日 1:41
    • 已标记为答案 BruceZhao 2011年11月11日 1:18
    2011年11月8日 1:40
  • 太谢谢了!
    2011年11月11日 1:18
  • 你好,我想问下用什么方法判断用户使用的是什么语言版本?

    另外我的二次开发webpart怎么根据用户语言变化?

    2012年3月21日 12:04