javascript - 如何在 cookie 中存储其他语言 (unicode) 并再次取回

标签 javascript cookies unicode utf-8

任何人都可以帮助我了解如何存储另一种语言的 cookie 值,而不是 如何以该语言再次检索它。

我的外语 cookie 在存储后检索时似乎变成了垃圾。

部分代码:

编写cookie代码:

   function writecook() {
            document.cookie = "lboxcook=" + document.getElementsByTagName('input')[0].value;
            //input[0] is the input box who's value is stored
   }

检索 Cookie 代码:

  <script language="JavaScript"> 
            function get_cookie ( cookie_name )
            {
               var results = document.cookie.match ( '(^|;) ?' + cookie_name + '=([^;]*)(;|$)' );


               if ( results )
               return ( unescape ( results[2] ) );
               else
               return null;
            }
            </script> 

谢谢。

最佳答案

设置 cookie 时使用 encodeURIComponent(),检索时使用 decodeURIComponent()

var cookieValue = document.getElementsByTagName('input')[0].value;
document.cookie = "lboxcook=" + encodeURIComponent(cookieValue);

function get_cookie(cookie_name) {
    var results = document.cookie.match ('(^|;) ?' + cookie_name + '=([^;]*)(;|$)');
    return results ? decodeURIComponent(results[2]) : null;
}

关于javascript - 如何在 cookie 中存储其他语言 (unicode) 并再次取回,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4901633/

相关文章:

linux - BASH:echo -e 不适用于 Unicode Cyrillic

c++ - 确定将宽字符与不兼容的 char API 一起使用时的最佳实践

python - 如何用python获取原始字符?

javascript - 如何按图片名称降序排列div内容?

javascript - 根据之前的类多次添加条形码

java - 由于 cookie-config,Weblogic 中的 web.xml 验证抛出错误

reactjs - 使用具有另一个来源的 API (CORS) 来响应应用程序

php - $_COOKIE 仅存储最后插入的值

Javascript 切换隐藏

javascript - Highcharts - 将 minTickInterval 设置为一天后,刻度线不会出现在点下