qinxcb
超斌
2012-03-12 00:33
浏览 297

Jquery each 的高级使用问题

在使用jquery嵌套时,出现问题
htmValue ='';
$.each(data.values, function(index,value){

htmValue +='

';
htmValue +='';
htmValue +=''+value.name+'';
$.each(data.titles, function(index2,title){

var keys = json2string(title.value);
alert(keys); 显示的值为name
alert(value["name"]); 显示的值正确
alert(value[keys]); 显示undefined
htmValue +='' + value[keys] +'';
});
htmValue +='';
});

在使用.each时,外的循环的 key值不能动态的赋值?
这是为什么?

  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 邀请回答

3条回答 默认 最新

  • suziwen
    suziwen 2012-03-12 11:40
    已采纳

    [code="js"]
    var dataProperty = {
    property1:'name1',
    property2:'name2',
    property3:'name3'
    }

    var dataValues = [{
    name0:"12",
    name1:"13",
    name2:"14"

    },{
    name0:"22",
    name1:"23",
    name2:"24"
    }];
    //以数组的属性值name0,name1和name2不确定属性是动态的
    $.each(dataValues,function(index,datas){

    $.each(dataProperty,function(index2,property){
    //我拿name0,到name3的值通过如下方式,无法拿到
    alert(datas[property]);
    });
    }); [/code]

    这样试试,
    其实你这个直接用javascript的反射就可以拿到对像的属性了


    [code="js"]var a = {field1:'aaa',field2:'222'}

    for(var _a in a ){
    alert(a[_a]);
    }[/code]

    点赞 评论
  • suziwen
    suziwen 2012-03-12 09:52

    没明白你这个想做什么 ,直接把完整的HTML+JS做附件上传下看看

    点赞 评论
  • jkxydp
    jkxydp 2012-03-12 13:47

    不如你把页面发给我,我帮你调一下,你这样发代码,我是一头雾水。

    点赞 评论

相关推荐