今天测试 json 格式的数据传递,以及用其生成动态表格碰到了些问题
1.在传递数组变量时候,赋值给父窗口的全局变量 obj 时会在调试窗口打印的日志无权访问元素
2.但是父窗口的 function 确实可以调用该 json 数组变量 obj
3.问题是:需要在父窗口方法循环访问数据动态元素的时候比如 :
for(i=0;i<ogj.length;i++){
alert(obj[i][pkey]);
}
的时候浏览器会报错,而错误类型却在百度查不到。
于是就郁闷的调试了半天,结果无解。
解决方案:
后来换了个思路解决,就是用json的反序列化,和序列化传值
1.先在子窗口传值 JSON.stringify(obj) 进父窗口的 input 元素;
2.在父窗口方法 将获得的字符串再转义成JSON
接下来的事情就迎刃而解了,虽然问题很简单,但是原本以为既然能操作变量就尽量不做转换了,结果却是操作文本来得简单!