json使用心得

上周遇到的几个耗时较长的bughtml

1.写页面iframe置换元素找不到,发现是缺乏范围,加一行参数"window.parent.document"表示在父亲元素范围中查找(根本缘由是本身查找本身找不到)jquery

$("#frame",window.parent.document).attr("src","QoS_fake.html");

2.webstorm上面写得静态页面挂在c9系统下报404,缘由是觉得在eclipse下使用的仍是相对路径,web

举个例子,为何requestmapping是这样:/action/layer1/layer2/test:多加了好多层?json

是由于若是在页面中引用其余文件,好比echarts数组

<script src="../../../ui/echarts-2.2.7/build/dist/echarts.js"></script>浏览器

这时候根目录从浏览器地址栏最后一个"/"开始逐层向上找一直找到项目名c9(项目名),再向下找文件app

归根到底仍是相对位置从浏览器最后一个"/"开始解析,因此requestMapping路径配置最好和实际路径相同echarts

当心得:eclipse

js代码中嵌入.attr("key","value");能够很方便的修改页面元素样式,用在jquery中是.val()方法webstorm

在调试工具里面输入$("calendar").val()能够看到日期控件的值

 

下面是json总结

首先是js对象

var person={name:"a",age:123} (或者这样 var person=new Object(),person.age=123)

能够访问person.name,发现是a

js对象时原生态的json对象,要声明一个json数组对象,能够这样,方括号表明数组,花括号表明对象

person=[{name:"a",age:123},{name:"b",age:22}]

访问的话:person[1].name,发现是b

person={name:"a",age:123}

这样访问:person[name],发现是a

 

json对象不用var声明,做用域也更广,是全局变量;这个局指的是方法体内;js对象则是局部变量

json和eclipse结合,因为静态页面和动态代码交互靠字符串:

如一个json字符串:jsonObj3 = “[{name:"a",age:123},{name:"b",age:22}]”

//对象转字符串

jsonStr2 = JSON.stringify(jsonObj3);

//字符串转对象

jsonObj3 = JSON.parse(jsonStr);

 

$.each(data,function(index,element)){

  element[index]

}

其中index不只能够是数字,也能够是字符串,能够完成遍历

 

@responsebody

若是是list,list.add("xiaoli");list.add("xiaozhang")转化成["xiaoli","xiaozhang"]

访问list[0]

若是是map,map.put("name","xiaoli");map.put("age","111");转换成{name:xiaoli,age:123}

访问map[name]

 

最后一个问题,看别人的代码

有以下方法:

$$.parse();

不明白是什么意思?

 

其实在jcdf.js中

var jcdf = new jcdfObject();
var $$ = jcdf;

也就是说:jcdf是一个js对象,里面有方法,至关于jcdf.parse()方法调用

 

 

转帖,关于页面跳转:

1、背景
A,B,C,D都是jsp,D是C的iframe,C是B的iframe,B是A的iframe,在D中跳转页面的写法区别以下。


2、JS跳转
window.location.href、location.href 本页面跳转,D页面跳转
parent.location.href 上一层页面跳转,C页面跳转
top.location.href 最外层页面跳转,A页面跳转


3、连接或者form
D页面中有form
<form>: form提交后D页面跳转
<form target="_blank">: form提交后弹出新页面
<form target="_parent">: form提交后C页面跳转
<form target="_top"> : form提交后A页面跳转


4、刷新parent.location.reload():C页面刷新window.opener.document.location.reload():C页面刷新(使用子窗口的opener对象来得到父窗口对象)top.location.reload():A页面刷新

相关文章
相关标签/搜索