我的属性不会随jquery更改

我的属性不会随jquery更改,jquery,nested-attributes,Jquery,Nested Attributes,为什么我不能用以下代码更改每个age=“number”?我的属性()中是否缺少某些内容 22 23 24 25 26 22 23 24 25 26 $(“正文”)。在(“单击”,函数(){ var x=$(“#人”).children(函数(){ 返回$(this.find(“span:nth child(4)”).text(); }); 美元("人李").attr("年龄",x),; }); 这很正常。由于子对象查找子对象,所以它不会改变,因此结果是一个对象 $("body").on

为什么我不能用以下代码更改每个age=“number”?我的属性()中是否缺少某些内容


  • 22 23 24 25 26
  • 22 23 24 25 26
  • $(“正文”)。在(“单击”,函数(){ var x=$(“#人”).children(函数(){ 返回$(this.find(“span:nth child(4)”).text(); }); 美元("人李").attr("年龄",x),; });
    这很正常。由于子对象查找子对象,所以它不会改变,因此结果是一个对象

    $("body").on("click", function(){
    
    var x = $("#people span:nth-child(4)").text();
    $("#people li").attr("age", + x);
    });
    

    我认为你走错了方向
    x
    是一个jQuery对象,所以您不能仅仅将其转换为字符串,而绝对不能转换为数字(使用
    +
    )。此外,我还从未见过将函数传递给遍历函数。我是这样做的:


    您的标记无效,您应该用
    ul
    /
    ol
    元素包装
    li
    元素。您到底想做什么?告诉我们你想用这个实现什么。我之所以在代码中有孩子是因为有多个
  • 是的,这就是我想要的。问题解决了。
    $("body").on("click", function(){
        var newAgeValue = $("#people span:nth-of-type(4)").text();  
        $("#people li").attr("age", newAgeValue);
    });
    
    $("body").on("click", function(){
    
    var x = $("#people span:nth-child(4)").text();
    $("#people li").attr("age", + x);
    });
    
    $("body").on("click", function () {
        $('#people li').each(function() {
            $(this).attr('age', $('span:nth-child(4)', this).text());
        });
    });