主题 : 关于json_encode导致的js无法取得html的值的解决方法
级别: 风云使者
UID: 3
精华: 1
发帖: 5641
威望: 2373 点
铜币: 5668 枚
贡献值: 0 点
好评度: 0 点
在线时间: 5716(时)
注册时间: 2010-06-13
最后登录: 2021-01-11
0楼  发表于: 2018-06-30 10:05

关于json_encode导致的js无法取得html的值的解决方法

         我们有时候需要借助html页面将php提交的数值传递给js.
         但是, 当php的值为数组时,会出现一些问题。 所以要将数组先转化为字串。 由于serialize这个会导致安全问题, 所以作为在互联网上使用的程序来讲,这个还是不用的好。
         所以, 使用json_encode()这个函数转化为字串。但是,这个字串无法被js获取。虽然在console下获取没有问题, 但是实际运行则存在问题。 原因不明。
         解决方式是将这个字串做过urlencode, 然后在后面再用urldecode()解析回来。
         另外, 当客户的输入中有&符号时,有时也会导致系统解析出错。这个时候也可以将值使用urlencode()转化。