当页面jquery调用java方法,然后返回如下json对象:
[{treatFrameSeq: "2", kbn: "1", date: "8_10_2010", treatPeriod: "1", dTreatFrameList: [{ irradRound: "16", protocolName: "aa"}, {irradRound: "11", protocolName: "bb"}]}, { treatFrameSeq: "3", kbn: "1", date: "8_11_2010", treatPeriod: "1", dTreatFrameList: [{irradRound: "16", protocolName: "cc",}]}];还有,我想把其中的dTreatFrameList先保存到页面的一个属性,有需要再取得dTreatFrameList里面的键值,不知可不可以,要怎样才行。因为设置属性attr只能是String类型的吧?
[{treatFrameSeq: "2", kbn: "1", date: "8_10_2010", treatPeriod: "1", dTreatFrameList: [{ irradRound: "16", protocolName: "aa"}, {irradRound: "11", protocolName: "bb"}]}, { treatFrameSeq: "3", kbn: "1", date: "8_11_2010", treatPeriod: "1", dTreatFrameList: [{irradRound: "16", protocolName: "cc",}]}];还有,我想把其中的dTreatFrameList先保存到页面的一个属性,有需要再取得dTreatFrameList里面的键值,不知可不可以,要怎样才行。因为设置属性attr只能是String类型的吧?
//先排版, 理清结构
var arr = [
{
treatFrameSeq: "2",
kbn: "1",
date: "8_10_2010",
treatPeriod: "1",
dTreatFrameList: [
{ irradRound: "16", protocolName: "aa"},
{irradRound: "11", protocolName: "bb"}
]
},
{
treatFrameSeq: "3",
kbn: "1",
date: "8_11_2010",
treatPeriod: "1",
dTreatFrameList: [
{irradRound: "16", protocolName: "cc"}
]
}
];
var dTreatFramList = {};
var id = 0;
function gogogo(array){
var obj = {};
$.each(array, function(index, value){
$.each(value, function(key, _value){
//alert(key)
if(key == "dTreatFrameList"){
$.each(_value, function(_index, __value){
//这里的每个__value就是lz所需要的dTreatFramList中的某个键值对
//这里的id LZ根据自己的需求设定吧
obj[id.toString()] = __value;
id++;
});
}
});
});
return obj;
}
dTreatFramList = gogogo(arr);
2种方法
$.getJSON(url, params, function (data) {
alert(data);//object jquery已经帮我们将后台的字符串转成js的对象了
alert(data.dTreatFrameList);//array,要保存在属性中,需要转换成字符串
})$.get(url, params, function (data) {
alert(data);//string
var o = eval("("+data+")");//用eval转换成js对象
alert(o.dTreatFrameList);//array,要保存在属性中,需要转换成字符串
var str = "[";
for (var i in o.dTreatFrameList) {
str += "{";
for (var key in o[i]) {
str += key + ":" + o[i][key]
}
str += "}";
if (i != o.dTreatFrameList.length - 1) {
str += ",";
}
}
str += "]";
$("#id").attr("key", str);
})