解决在IE8中无法使用原生JSON的问题

转自:http://www.iitshare.com/ie8-not-use-native-json.html

起因

在项目中要将页面上的js对象传给后台,想到可以用json转成字符串传递。


1

2

var obj = {"a":1 "b":2, "c":3};

var str = JSON.stringify(obj);

上述代码在firefox,chrome中测试都没问题,可是在ie8下确提示JSON Not Defined,google了一下,自然也有别人遇到一样的问题,并且给出了解决方案,下面就分享一下,同时解释一下为什么会有这个问题。

解决

首先说原因,微软文档的Requirements:Note中已经说的很清楚,翻译成中文意思大致如下:JSON是包含在JScript 5.8中,而为了向下兼容ie8只有在文档模式是”Internet Explorer 8 Standards”的时候才使用JScripte 5.8,其他时候使用JScripte 5.7特性。因此如果文档模式没有声明为”Internet Explorer 8 Standards”是找不到JSON对象的。
       那如何声明”Internet Explorer 8 Standards”呢,根据另一篇微软文档,有两种方式实现:


1

2

1. 在文档头中添加<meta http-equiv="X-UA-Compatible" content="IE=8" >

2. 使用<!DOCTYPE>来声明文档

这两种方式都是告诉ie8浏览器以Internet Explorer 8标准模式显示内容,同时使用ie8的最新特性。

解决在IE8中无法使用原生JSON的问题,布布扣,bubuko.com

时间: 2025-01-02 15:28:01

解决在IE8中无法使用原生JSON的问题的相关文章

【转】解决spring mvc 中ajax返回json乱码问题

转载自:http://my.oschina.net/u/140421/blog/176625 转载自:http://my.oschina.net/candon/blog/149073?fromerr=I9VBOy62 第一个转载: 在使用spring-mvc的mvc的时候既享受它带来的便捷,又头痛它的一些问题,比如经典的中文乱码问题.现在是用json作为客户端和服务端 的数据交换格式貌似很流行,但是在springmvc中有时候会因为我们的各种疏忽从而造成页面ajax请求到的相应数据,如果带有中文

解决在TP5中无法使用快递鸟的即时查询API

快递鸟的接口对接其实很简单,先去官网注册账号,登陆把基本信息填好,然后在产品管理中订购一下"物流查询",免费,不过其他产品是收费,免费的有对接口调用频率限制,结合自己的应用流量够用就可以. 使用前复制一下账号下的用户ID和API key,并且快递鸟对各个API提供了各种语言的demo,其实下载下来,找一下平时寄快递的运单号,本地运行一下就能用了.(名称: KdApiSearchDemo) 其实拿到demo代码,可以放到项目中,因为demo是以面向过程写的,所以为了方便自然就想封装一下.

IE8中JSON.stringify方法对自动转换unicode字符的解决方案

IE8内置了JSON对象,用以处理JSON数据.与标准方法的不同,IE8的JSON.stringify会把utf-8字符转码: var str = "我是程序员" var jsonstr = JSON.stringify(str) //""\u6211\u662f\u7a0b\u5e8f\u5458"" 一般情况下,我们是在向服务器发送数据的时候,才调用这个方法.服务器端可以正确的解析,所以没有什么问题.但是如果我们jsonstr还要在别的地方用

解决在IE中返回JSON格式的数据时提示下载的问题

如题,以ASP.NET MVC为例,解决办法如下: 控制器中: public JsonResult Test() { return Json(json, "text/html"); } 视图中: $.post("/controller/action/", function (data) { data = JSON.parse(data); }); 解决在IE中返回JSON格式的数据时提示下载的问题

解决IE中无法使用jquery.find方法解析xml字符串的方法

getResult:function(data){ data=data.replace(/"/g,"'"); var xml; //解决办法 if( typeof data == "string" ){ xml = new ActiveXObject("Microsoft.XMLDOM"); xml.async = false; xml.loadXML(data); } else { xml = data; } var resultOb

[译] 在Web API 2 中实现带JSON的Patch请求

原文链接:The Patch Verb in Web API 2 with JSON 我想在.NET4.6 Web API 2 项目中使用Patch更新一个大对象中的某个字断,这才意识到我以前都没有用过Patch.这是一次难得的学习机会. 我不知道在Web API 2中最好的实现方式是什么,所以我按照惯例,用google搜索"Patch Web API".我得到的第一条结果是Michael McKenna's "How to Add JSON Patch Support to

JavaScript中字符串转Json方法小记

例如: JSON字符串:var str1 = '{ "name": "cxh", "sex": "man" }'; JSON对象:var obj= { "name": "cxh", "sex": "man" }; 1.在js中把json字符串转json对象的方法不止一种,最常见的一种方式如下,使用到eval方法: 1 var jsonStr = '

SpringMVC3.2 解决PO返回前台转成JSON时数据Long精度丢失问题

SpringMVC3.2  解决PO返回前台转成JSON时数据Long精度丢失问题 方案 1.自定义一个杰克逊的json转换类 public class LongToStringAdapter extends ObjectMapper { private static final long serialVersionUID = 4402127997078513582L; public LongToStringAdapter() { super(); SimpleModule simpleModu

JSON中 net.sf.json.JSONException: java.lang.NoSuchMethodException异常

在json对象和java对象转换时 String s = "{'name':'name1','pwd':'pwd1'}"; Person p = (Person)JSONObject.toBean(JSONObject.fromObject(s), Person.class); System.out.println(p.getPwd()); 上面代码中出现以下异常: net.sf.json.JSONException: java.lang.NoSuchMethodException [