解决方案 »
- 遍历ul中所有li标签的里面的内容,如果有和文本框中的内容一致的li的话,清空文本框中的内容,如果没有,什么也不做。
- >>>>>>>>>>>>>想找个英语在线朗读的解决方案>>>>>>>>>>>>>>
- 写一JS,实现:差额 = 学费 - 实收
- 求一个正则表达式!!!!!!!!!!
- 正则小问题
- 用javascript用修改注册表的代码啊
- 如何实现列表框内容的制约?请教!
- 想问一下各位高手,我用javascript:window.open("URL");点击链接后,原来的页面总是显示object这个文字,想问一下这是怎么回事
- js checkbox 勾选
- clipboard.js 怎么实现复制图片 而不是复制图片url
- 弱弱的问一下,js如何获取当前项目的根路径?
- javascript写的字符串加密程序,用if判断程序正常,用switch出错
var strjson=....;
$.each(strjson,function(a,a_item){
alert(a+":"+a_item);
})
这个瞧瞧 声明个变量 记录下父元素(这里的a) 不断循环这个就OK了。。
$.each(strjson,function(a,a_item){
if(a_item.length>1)
{
$.each(a_item,function(b,b_item){
alert(b+":"+b_item);
})
}
})具体咋写你自个改改就好。。
比如:json类似于这样的
var json={
"name":"zhansan",
"age":23,
"address":{
"city":"beijing",
"year":["气态流出物月报",0,1],
"gas":{
"gasSheet":"气态流出物月报",
"H_adjust":1,
"employer":{
"midle":"sizhong",
"hight":"sizhong"
}
},
"time":{
"year": ["气态流出物月报",0,1],
"start":[1,"~"],
"duration":31,
"employer":{
"midle":"sizhong",
"hight":"sizhong"
}
}
},
"student":[13,"s1","s2"],
"units":{"title":"function"} //怎么判断它是相对于根的子节点?
}
我要得到它的所有值对应的层次,比如“function”对应的是json.units.title,...怎么做?
/// <summary>
/// 返回数据类型的小写副本
/// </summary>
/// <param name="obj">目标对象</param>
/// <returns>目标对象的数据类型的小写副本:string,date,number,array,boolean,object,regexp,function...</returns>
return Object.prototype.toString.call(obj).match(/^\[object\s(.*)\]$/)[1].toLowerCase();
}
function getNS(ns,json,named){
var keyNamed;
for(var key in json){
if(json.hasOwnProperty(key)){
keyNamed = named + '.' + key;
if(_type(json[key])=='object'){
ns[keyNamed] = '{}';//如果不想保留非值类型的结构,删除这句
getNS(ns,json[key],keyNamed);
}else{
ns[keyNamed] = _type(json[key])=='array'
? json[key].join(',')
: json[key];
};
}
};
return ns;
};
var ns=getNS({},json,"json");
还是没搞明白这个是做什么用的,能说下么?
上面的ns即可生成值类型[数组也被包含在内,生成连接符为,的字符串]的结构描述,这东东要是碰上两个值相同的,上哪查去呀以你的例子来说,ns结构为:
ns={
"json.name": "zhansan",
"json.age": 23,
"json.address": "{}",
"json.address.city": "beijing",
"json.address.year": "气态流出物月报,0,1",
"json.address.gas": "{}",
"json.address.gas.gasSheet": "气态流出物月报",
"json.address.gas.H_adjust": 1,
"json.address.gas.employer": "{}",
"json.address.gas.employer.midle": "sizhong",
"json.address.gas.employer.hight": "sizhong",
"json.address.time": "{}",
"json.address.time.year": "气态流出物月报,0,1",
"json.address.time.start": "1,~",
"json.address.time.duration": 31,
"json.address.time.employer": "{}",
"json.address.time.employer.midle": "sizhong",
"json.address.time.employer.hight": "sizhong",
"json.student": "13,s1,s2",
"json.units": "{}",
"json.units.title": "function"
}
请问您这ns结构是怎么做得?我需要的就是这个啊!
var keyName;
for(var key in json){
keyName = named + "." + key;
if(_type(json[key]) == "object"){
getNodes(json[key],keyName);
}else{
if(_type(json[key]) == "array"){
for(var i=0;i<json[key].length;i++){
keyName = named+"."+key+"["+i+"]";
document.write(keyName+"</br>");
}
}else{
document.write(keyName+"</br>");
}
}
}
}function del(){
getNodes(json,"Root");
}
能不能麻烦大神帮我看一下问题在哪?谢谢了,马上结贴给分,分不多,对不住了
if (_type(json[key][i]) == "object") {//加多个判断
getNodes(json[key][i], keyName);
} else {
document.write(keyName + "</br>");
}
var json={
"name":"zhansan",
"age":23,
"address":{
"city":"beijing",
"year":["气态流出物月报",{a:1,b:"xx"},1],
"gas":{
"gasSheet":"气态流出物月报",
"H_adjust":1,
"employer":{
"midle":"sizhong",
"hight":"sizhong"
}
},
"time":{
"year": ["气态流出物月报",0,1],
"start":[1,"~"],
"duration":31,
"employer":{
"midle":"sizhong",
"hight":"sizhong"
}
}
},
"student":[13,"s1","s2"],
"units":{"title":"function"} //怎么判断它是相对于根的子节点?
}
输出:
json.name
json.age
json.address.city
json.address.year[0]
json.address.year[1].a
json.address.year[1].b
json.address.year[2]
json.address.gas.gasSheet
json.address.gas.H_adjust
json.address.gas.employer.midle
json.address.gas.employer.hight
json.address.time.year[0]
json.address.time.year[1]
json.address.time.year[2]
json.address.time.start[0]
json.address.time.start[1]
json.address.time.duration
json.address.time.employer.midle
json.address.time.employer.hight
json.student[0]
json.student[1]
json.student[2]
json.units.title