Cookie中文存储页面500问题

  前段时间做cookie存储,直接用的菜鸟教程中的cookie设置方法,方法如下:

function setCookie(cname,cvalue,exdays)
{var d = new Date();d.setTime(d.getTime()+(exdays*24*60*60*1000));var expires = "expires="+d.toGMTString();document.cookie = cname + "=" + cvalue + ";" + expires+"; path=/";
}

  以上的函数参数中,cookie 的名称为 cname,cookie 的值为 cvalue,并设置了 cookie 的过期时间 expires。

  该函数设置了 cookie 名、cookie 值、cookie过期时间。

  当用上面的cookie存储方法存储中文数据后,刷新页面发现页面报错,如下:

 

  cookie中存储内容中有中文:

  所有我们需要先对要存储的内容进行编码,然后再存储,这样才不会报错,下面用的encodeURI()函数做的编码。

function setCookie(cname,cvalue,exdays)
{var d = new Date();d.setTime(d.getTime()+(exdays*24*60*60*1000));var expires = "expires="+d.toGMTString();document.cookie = encodeURI(cname) + "=" + encodeURI(cvalue) + ";" + expires+"; path=/";
}

  这样做存储,就可以解决cookie中文存储的问题了,然后注意的就是在获取cookie的时候,需要对数据进行decodeURI()解码,完整的demo:

<script type="text/javascript">function setCookie(cname,cvalue,exdays){var d = new Date();d.setTime(d.getTime()+(exdays*24*60*60*1000));var expires = "expires="+d.toGMTString();document.cookie = encodeURI(cname) + "=" + encodeURI(cvalue) + ";" + expires+"; path=/";}function getCookie(cname){var name = encodeURI(cname) + "=";var ca = document.cookie.split(';');for(var i=0; i<ca.length; i++){var c = ca[i].trim();if (c.indexOf(name)==0) return decodeURI(c.substring(name.length,c.length));}return "";}function alertCookie(){alert(getCookie('name'));}
</script>
<span onclick="setCookie('name','我',1);">设置cookie</span>
<span onclick="alertCookie();">获取cookie</span>

 

转载于:https://www.cnblogs.com/xgytbht/p/7472971.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/253418.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

IC Compiler指南——数据准备

一、概述 ICC数据设置的文件关系框图如图&#xff1a; 后端工具在数据设置阶段需要对两大类数据进行设置&#xff0c;包括从前端设计继承的综合数据 以及后端设计需要的物理数据。 综合数据主要包括前端逻辑综合已经设置过的逻辑与时序库文件、设计约束文件sdc以 及综合网表文…

iOS Xcode全面剖析

前言 前几天在公司内部做了一次关于iOS的入门分享&#xff0c;听众有PHP、Web、Android、测试、产品、UI等&#xff0c;主旨是力求不懂iOS的人能了解iOS的开发流程&#xff0c;听后都能创建一个iOS项目并打印HelloWorld。&#xff08;这是背景&#xff09;你想想就这么点需求&a…

VS2013编译OBS源码

obs源码来之&#xff1a;https://sourceforge.net/projects/obsproject/ 下载源码之后直接打开sln索引文件就行 项目打开之后 obs作为启动项 直接编译就行&#xff0c;正常应该一下就能编译成功。 在运行的时候可能会报错&#xff1a; 这个问题就需要制定一下编译输出路径&…

js图片切换

1.不同方式的图片切换 功能点:   1.页面默认循环切换,循环切换按钮获得焦点   2.点击顺序切换时,顺序切换按钮获得焦点     点击上一张时,当图片为第一张时,图片不再进行切换,图片张数和描述也不在变动;     点击下一张时,当图片为最后一张时,图片不再进行切换,图片…

CIS关键工艺技术概览

相机作为一种媒介&#xff0c;可以记录光所体现的物体&#xff0c;使人们能够主观或客观地表达各种情感和思想。当代人类身处于一个所谓的“数字游牧时代”&#xff0c;人们携带各类移动数码设备&#xff0c;生活不受时空的限制。在当今时代&#xff0c;相较于胶片相机&#xf…

1215 - Cannot add foreign key constraint

2019独角兽企业重金招聘Python工程师标准>>> 参考网页 https://blog.csdn.net/yiwangxiblog/article/details/52269527 https://blog.csdn.net/ytm15732625529/article/details/53729155 原因--亲测 两张表的存储引擎不一致。主键所在表和外键所在表的存储引擎改成一…

Css3实现波浪线效果1

一、波浪线 &#xff0c;常用 .info::before {content: ;position: absolute;top: 30px;width: 100%;height: 0.25em;background:linear-gradient(135deg, transparent, transparent 45%, #008000, transparent 55%, transparent 100%),linear-gradient(45deg, transparent, tr…

dm368ipnc 重写架构中的swosd 实现中文osd

appro的ipnc中只实现了英文的osd叠加&#xff0c;就连小小的ascii码表都没有覆盖全&#xff0c;而且该swosd架构灰常凌乱。 其实无非就是两个功能&#xff0c;一是叠加文字&#xff0c;而是叠加图片&#xff0c;由于考虑到兼容不同的分辨率的视频流&#xff0c;所以处理的分支相…

dubbo系列(一)

进入官网之后&#xff0c;找到 http://dubbo.apache.org/en-us/docs/user/quick-start.html 有一个链接跳转到这里 http://dubbo.apache.org/en-us/docs/admin/install/provider-demo.html 使用git将项目下载下来 修改如下Service实现类 1 /*2 * Licensed to the Apache Softw…

基于Flask实现后台权限管理系统 - 表设计

1.1. 设计 1.1.1. 用户表 用户表记录系统中的所有用户&#xff0c;是权限管理系统最基本的部分&#xff0c;和其他权限表都有一定的关联关系&#xff0c;同时&#xff0c;一个还有一个重要的功能&#xff1a;系统登陆。 名称 数据类型 允许空值 默认值 描述 ID VARCHAR …

DM8168的McSPI/McASP/McBSP接口

McSPI接口 SPI管脚&#xff1a; 管脚 类型 描述 SPI_SCLK I/O SPI串行时钟&#xff08;MASTER时&#xff1a;输出&#xff1b;SLAVE&#xff1a;输入&#xff09; SPI_D0 I/O 能被配置为输入或输出&#xff08;MOSI&#xff1a;master out&#xff0c;slave in或MISO&…

Sencha ID的注册

sencha id的注册用不着翻墙&#xff0c;直接访问下面的地址https://www.sencha.com/forum/register.php输入你的个人信息敞开来注册&#xff0c;我的注册名为charlie2018w非常顺利的过程你免费注册的id只能用30天。拥有这个id你就可以在eclipse或者sencha artchitect3或者webst…

ansible安装

1、简介 ansible是新出现的自动化运维工具&#xff0c;基于Python开发&#xff0c;集合了众多运维工具&#xff08;puppet、cfengine、chef、func、fabric&#xff09;的优点&#xff0c;实现了批量系统配置、批量程序部署、批量运行命令等功能。ansible是基于模块工作的&#…

jenkins之qq企业邮箱配置

一、配置qq企业邮箱 1、登录jenkins后台管理&#xff0c;选择 系统管理 ☞ 系统设置 2、SMTP server配置 3、邮件通知配置 配置ssl等参数 点击 高级 4、发送邮件测试 总结&#xff1a;邮箱配置不成程分析 1、管理员账号和默认发送账号不一致。2、smtp服务器设置不正确;qq企业…

mysql-5.7 持久化统计信息详解

一、持久化统计信息的意义&#xff1a; 统计信息用于指导mysql生成执行计划&#xff0c;执行计划的准确与否直接影响到SQL的执行效率&#xff1b;如果mysql一重启 之前的统计信息就没有了&#xff0c;那么当SQL语句来临时&#xff0c;那么mysql就要收集统计信息然后再生成SQL语…

关于传感器”英寸“计量

传感器上的n是指对角线长度为16mm或18mm的n倍 以英寸代指的传感器大小称为靶面尺寸。 在CCD/CMOS出现之前&#xff0c;摄像机是利用一种叫作“光导摄像管&#xff08;Vidicon Tube&#xff09;”的成像器件感光成像的&#xff0c;这是一种特殊设计的电子管&#xff0c;其直径的…

关于USB-AUDIO使用ALSA编程的一点问题

转载自&#xff1a;http://blog.chinaunix.net/uid-25272011-id-3153434.html 最近在调试一款原相PAP7501摄像头中的USB的麦克风&#xff0c;USB层走的应该是标准的UAC协议&#xff0c;具体可以见USB的官网&#xff1a;http://www.usb.org/developers/devclass_docs#approved&a…

Fiddler4入门——手机抓包

一、下载工具包 百度搜索”fiddler 下载“ &#xff0c;安装最新版本 下载的软件安装包为“fiddler_4.6.20171.26113_setup.exe”格式&#xff0c;双击安装。安装成功&#xff0c;在“开始”-“所有程序”&#xff0c;就会看见这样的图标&#xff0c;若是常用的话&#xff0c;也…

(五)DOM4j进行XML文件的解析及生成

DOM4j本身还是需要使用SAX建立解析器&#xff0c;然后通过文档依次找到根节点&#xff0c;再通过根节点查找每一个节点的内容. 1.写操作 import java.io.File;import java.io.FileOutputStream;import java.util.Iterator; import org.dom4j.Document;import org.dom4j.Documen…

Linux系统基础.作业

要求以root用户登录系统&#xff0c;右击桌面打开终端&#xff0c;查看当前登陆Linux系统所使用的用户名 查看哪些用户在系统上工作 修改当前时间为2018年8月26号11:28 查看2015年10月份日历 使用两种方法查看ls命令的使用说明 清除屏幕 ctrlL使用“useradd tom”命令新建tom用…