var smilies_type = new Array();
smilies_type[1] = ['默认', 'default'];
smilies_type[2] = ['酷猴', 'monkey'];
smilies_type[3] = ['呆呆男', 'grapeman'];
var smilies_array = new Array();
smilies_array[1] = new Array();
smilies_array[1][1] = [
['1', ':)','smile.gif','20','20','20'],
['2', ':(','sad.gif','20','20','20']
];
smilies_array[2] = new Array();
smilies_array[2][1] = [['25', '[m:01]','01.gif','20','20','48'],
['26', '[m:02]','02.gif','20','20','48'],
['27', '[m:03]','03.gif','20','20','48'],
['28', '[m:04]','04.gif','20','20','48']
];请问上面段代码,我要改成动态赋值应该怎样写呢?['2', ':(','sad.gif','20','20','20']
这个是数据项,是从XML读取的相关节点信息,如,2表示XML中ID,:(是CODE,sad.gif是imgUrl,JS读XML我是实现了的,循环可以取出数据,但是动态赋值给
smilies_array[1][1]这个我不会,求救高手,谢谢!

解决方案 »

  1.   


    var grapeman_list = "['25', '[m:01]','01.gif','20','20','48'],
    ['26', '[m:02]','02.gif','20','20','48']";
    smilies_array[1][1] = [grapeman_list];
    这样拼接?我这样试的啊,就是循环读数据时候接成字符串富给数组,但是这样不对啊
      

  2.   

    用循环对象例如: var myArray = new Array(new Array("1",value1),new Array("2",value2));
    把里面的new Array抽出来循环遍历赋值就可以了。里面的子数组都当做是一个对象来处理。
      

  3.   

    var grapeman_list = "['25', '[m:01]','01.gif','20','20','48'],
    ['26', '[m:02]','02.gif','20','20','48']";
    smilies_array[1][1] = eval("(["+grapeman_list+"])");
    通过这种方式解决了
    或许3楼说的方法也能实现,但是没试。谢谢大家