跳到IE9的一个坑里了(枚举 JavaScript 属性)
有一段Json如下
[{"SaleName_ID":"0","SaleName":"","28":"45","14":"20","13":"40","8":"50","SSD_ChargesType":"1","SSD_SaleSetType":"0"},
{"SaleName_ID":"1","SaleName":"SeleA","28":"1","14":"1","13":"1","8":"1","SSD_ChargesType":"2","SSD_SaleSetType":"1"},
{"SaleName_ID":"2","SaleName":"SeleB","28":"2","14":"2","13":"2","8":"2","SSD_ChargesType":"2","SSD_SaleSetType":"1"},
{"SaleName_ID":"3","SaleName":"SeleC","28":"3","14":"3","13":"3","8":"3","SSD_ChargesType":"2","SSD_SaleSetType":"1"},
{"SaleName_ID":"4","SaleName":"SeleD","28":"4","14":"4","13":"4","8":"4","SSD_ChargesType":"2","SSD_SaleSetType":"1"}]
因为中间的列数有可能多也有可能少,不知道列名,所以只能用for in的办法来解决
JS代码如下
for (var Row in SetSaleDetailJson) {
for (var key in SetSaleDetailJson[Row])
{
$("#zw").append(key + "=" + SetSaleDetailJson[Row][key] + ",");
}
$("#zw").append("<br>");
}
在IE8中firefox12.0中结果如下(是我想要的结果)
SaleName_ID=0,SaleName=,28=45,14=20,13=40,8=50,SSD_ChargesType=1,SSD_SaleSetType=0,
SaleName_ID=1,SaleName=SeleA,28=1,14=1,13=1,8=1,SSD_ChargesType=2,SSD_SaleSetType=1,
SaleName_ID=2,SaleName=SeleB,28=2,14=2,13=2,8=2,SSD_ChargesType=2,SSD_SaleSetType=1,
SaleName_ID=3,SaleName=SaleC,28=3,14=3,13=3,8=3,SSD_ChargesType=2,SSD_SaleSetType=1,
SaleName_ID=4,SaleName=SaleD,28=4,14=4,13=4,8=4,SSD_ChargesType=2,SSD_SaleSetType=1,
但是到了IE9,IE10中就变成如下的结果了
8=50,13=40,14=20,28=45,SaleName_ID=0,SaleName=,SSD_ChargesType=1,SSD_SaleSetType=0,
8=1,13=1,14=1,28=1,SaleName_ID=1,SaleName=SeleA,SSD_ChargesType=2,SSD_SaleSetType=1,
8=2,13=2,14=2,28=2,SaleName_ID=2,SaleName=SeleB,SSD_ChargesType=2,SSD_SaleSetType=1,
8=3,13=3,14=3,28=3,SaleName_ID=3,SaleName=SaleC,SSD_ChargesType=2,SSD_SaleSetType=1,
8=4,13=4,14=4,28=4,SaleName_ID=4,SaleName=SeleD,SSD_ChargesType=2,SSD_SaleSetType=1,
这明显列的顺序改变了。。。
后来在官方找到了IE兼容性的一篇文章
http://msdn.microsoft.com/en-us/library/ie/gg622937%28v=vs.85%29.aspx
提到这一点,尼玛居然不给解决办法,心中的千万匹的草尼玛在奔腾...
现在只能根据浏览器来判断重新写了,有哪位知道有好办法解决的给告诉一下啊
跳到IE9的一个坑里了(枚举 JavaScript 属性)的更多相关文章
- Java判断一个类里是否存在某个属性
Java判断一个类里是否存在某个属性 测试pojo类,比方我有个User类 @Getter @Setter public class User { private Long id; private S ...
- nodejs request module里的json参数的一个坑
今天工作的时候遇到一个坑,在客户端用nodejs给服务器发送HTTP请求,服务器老是报错:In the context of Data Services an unknown internal ser ...
- dcef3 指出一个坑
dcef3 指出一个坑 http://ju.outofmemory.cn/entry/80119 BccSafe's Blog 2014-06-11 2388 阅读 dcef3提供了TChromi ...
- 用html5的视频元素所遇到的第一个坑
html5 有一个video标签,这个是被大家所熟知的事情.按照w3c的规范,我认真的写出如下代码: <video preload="auto" controls=" ...
- 从tabBarController的一个item上的控制器跳转到另一个item上的控制器
先从习惯性的tabBarController开始,很多应用的外框都是用这个开始的,而从tabBarController的一个item上的控制器跳转到另一个上的,往往都是直接通过点击tabBar上的不同 ...
- 监控jvm的一个坑
监控jvm的一个坑 1,遇到的问题 我按照以往文档,在catalina.sh里追加jvm的监控api,如下 紧接着我启动 tomcat. 未报任何错误. 发现 lsof –i:12000, 12000 ...
- 【转载】linux命令行计算器bc的一个“坑”
[转载自]http://blog.chinaunix.net/uid-174325-id-3518953.html 结论:ibase,obase可以使用在不同的计算公式里,但是尽量把obase放iba ...
- 使用ffmpeg视频编码过程中踩的一个坑
今天说说使用ffmpeg在写视频编码程序中踩的一个坑,这个坑让我花了好多时间,回头想想,非常多时候一旦思维定势真的挺难突破的.以下是不对的编码结果: ...
- struts2 从一个action跳转到另一个action的struts.xml文件的配置
解释: 想要用<result>跳转到另一个action,原来的配置代码是: <action name="insertDept" class="strut ...
随机推荐
- Docker基本使用(一)
使用docker输入hello world Docker 允许你在容器内运行应用程序, 使用 docker run 命令来在容器内运行一个应用程序. 输出Hello world $ docker ru ...
- mysql Navicat 连接MySQL 8.0.11 出现2059错误
https://www.cnblogs.com/lifan1998/p/9177731.html 原因 mysql8 之前的版本中加密规则是mysql_native_password,而在mysql8 ...
- pytorch解决鸢尾花分类
半年前用numpy写了个鸢尾花分类200行..每一步计算都是手写的 python构建bp神经网络_鸢尾花分类 现在用pytorch简单写一遍,pytorch语法解释请看上一篇pytorch搭建简单网 ...
- 【BZOJ1188】分裂游戏(博弈论)
[BZOJ1188]分裂游戏(博弈论) 题面 BZOJ 洛谷 题解 这道题目比较神仙. 首先观察结束状态,即\(P\)状态,此时必定是所有的豆子都在最后一个瓶子中. 发现每次的转移一定是拿出一棵豆子, ...
- html内嵌框架
html内嵌框架 <iframe>标签会创建包含另外一个html文件的内联框架(即行内框架),src属性来定义另一个html文件的引用地址,frameborder属性定义边框,scroll ...
- Nginx代理MysqlCluster集群
-------Nginx代理MysqlCluster 公司有一个公网ip,有公网ip(222.222.222.222)那台服务器上装的nginx,mysql装在公司另外一台服务器上假设ip为192.1 ...
- tvs二极管应用电路
瞬态电压抑制器(TVS)具有响应时间快.瞬态功率大.漏电流低.击穿电压偏差小.箝位电压较易控制.无损坏极限.体积小等优点.目前已广泛应用于计算机系统.通讯设备.交/直流电源.汽车.家用电器.仪器仪表等 ...
- 牛客练习赛40 A 小D的剧场 (思维dp)
链接:https://ac.nowcoder.com/acm/contest/369/A 题目描述 若你摘得小的星星 你将得到小的幸福 若你摘得大的星星 你将得到大的财富 若两者都能摘得 你将得到 ...
- JavaScript面向对象--记录防忘记(一)
1.理解对象: 创建自定义对象最简单的方式就是创建一个object实例,再给他添加属性和方法. let person = new Object(); person.name = 'zhangsan'; ...
- pytest 3.fixture介绍一 conftest.py
前言: 前面一篇pytest2 讲到用例加setup和teardown可以实现在测试用例之前或之后加入一些操作,但这种是整个脚本全局生效的,如果我想实现以下场景: 用例1需要先登录,用例2不需要登录, ...