本帖最后由 bing475879749 于 2010-10-21 17:19:30 编辑

解决方案 »

  1.   

    个人认为 既然数据是 符合json规则的
    完全可以eval之后读取相应数据~~~!
      

  2.   

    这个明显是JSON数据, 为什么用JSON 库解析呢?
      

  3.   

    text是你绑定后的json对象
    var cols = text.widgetdata.g_Dressup.windows;
    for(var i in cols) {
       cols[i].mode//你要的mode
       cols[i].height//你要的height
       cols[i].width//你要的width
    }
    for(var j in text.widgetdata._99_5) {
        j//col[i].mode所对应的值
        text.widgetdata._99_5[j].qhtml //包含url的text,这个时候再做处理不是简单多了吗
    }
      

  4.   


    顶这个,难不成还想自己实现json解析
      

  5.   

    给楼主写了一个方法,步骤如下,首先构造json对象,就是staticData_Callback函数内的参数,其次,取出所有的mode/height/width,然后通过mode取src,如下:
    var data={
    widgetdata:{
    g_Dressup:
    {windows:
    [{appid:99,mode:13,posx:124,posy:38,posz:0,height:394,width:276,wndid:13},
    {appid:99,mode:76,posx:417,posy:233,posz:1,height:200,width:175,wndid:76},
    {appid:99,mode:75,posx:129,posy:44,posz:2,height:383,width:175,wndid:75},
    {appid:99,mode:5,posx:389,posy:236,posz:3,height:188,width:175,wndid:5}]
    }, 
    g_StaticFlag:"", 
    g_ReadOnly:0, 
    g_Errno:0,
     g_Needfix:0, 
     g_Abapps:[]
    },
    _99_5:
    {5:{
    result:"0",
    qhtml:"\x3Cqz:title type=\x22flash\x22 moduleborder=\x22false\x22>\x3C/qz:title>\x3Cdiv>\x3Cqz:swf swfsrc=\x22http://www.xxx.cn/flash/01/61.swf\x22 width=\x220\x22 height=\x220\x22 loop=\x22true\x22 waitforclick=\x22false\x22 wmode=\x22transparent\x22/>\x3C/div>",
    qscript:"",
    qstyle:""
    }
    }
    ,
    _99_13:
    {13:{
    result:"0",
    qhtml:"\x3Cqz:title type=\x22image\x22 moduleborder=\x22false\x22>\x3C/qz:title>\x3Cdiv>\x3Ca target=\x22_blank\x22 href=\x22\x22>\x3Cimg src=\x22http://www.xxx.com/img/xx.jpg\x22 width=\x220\x22 height=\x220\x22/>\x3C/a>\x3C/div>",
    qscript:"",
    qstyle:""
    }
    }
    ,_99_75:
    {75:{
    result:"0",
    qhtml:"\x3Cqz:title type=\x22flash\x22 moduleborder=\x22false\x22>\x3C/qz:title>\x3Cdiv>\x3Cqz:swf swfsrc=\x22http://imgfree.xxx.com/free/flash/61.swf\x22 width=\x220\x22 height=\x220\x22 loop=\x22false\x22 waitforclick=\x22false\x22 wmode=\x22transparent\x22/>\x3C/div>",
    qscript:"",
    qstyle:""
    }
    }
    ,_99_76:
    {76:{
    result:"0",
    qhtml:"\x3Cqz:title type=\x22plist\x22 moduleborder=\x22false\x22>33\x3C/qz:title>\x3Cdl>\x3Cdiv class=\x22bbor3 spb\x22 style=\x22clear:both;padding-bottom:5px;\x22>\x3Cdiv class=\x22spr left\x22>\x3Ca href=\x22\x22 target=\x22_blank\x22>\x3Cimg src=\x22http://\x22 alt=\x22\x22/>\x3C/a>\x3C/div>\x3Cp>\x3Ca href=\x22\x22 target=\x22_blank\x22>\x3C/a>\x3C/p>\x3Cp>fff\x3C/p>\x3Cdiv class=\x22clear\x22>\x3C/div>\x3C/div>\x3C/dl>",
    qscript:"",
    qstyle:""
    }
    }
    }
    var str=[];
    for(var i=0;i<data.widgetdata.g_Dressup.windows.length;i++){
    str[i]={};
    str[i]={mode:data.widgetdata.g_Dressup.windows[i].mode,
    width:data.widgetdata.g_Dressup.windows[i].width,
    height:data.widgetdata.g_Dressup.windows[i].height};
    eval("var _html=data._99_"+str[i].mode+".qhtml");
    str[i].src=_html.match(/(swf){0,1}src\s*=\s*\x22.+?\x22/ig)[0];
    }
      

  6.   

    其中的数组变量str最终就是楼主要的结果,如下:
    src=[
    {height:188,width:175,src:http://www.xxx.cn/flash/01/61.swf},
    {height:394,width:276,src:http://www.xxx.com/img/xx.jpg},
    {height:383,width:175,src:http://imgfree.xxx.com/free/flash/61.swf}
    ]