㍿532 2022-10-09 13:02 采纳率: 100%
浏览 20
已结题

js获取追加的数组元素

我想点击按钮就向datas数组追加一个对象,追加是能追加,但是下面的代码好像获取不到追加的对象

// 1 准备数据
        var datas = [{
                name:'子参',
                subject:'javaScript',
                score:100
            }, {
                name:'子商',
                subject:'javaScript',
                score:100
            }, {
                name:'子长',
                subject:'javaScript',
                score:100
            }, {
                name:'子元',
                subject:'javaScript',
                score:100
            }];

            // (增加数据)
            // 点击提交,把姓名,年龄,分数提交到表单
            var btn = document.querySelector('button');
            var uname = document.querySelector('.name')
            var subject = document.querySelector('.subject')
            var score = document.querySelector('.score')
            btn.addEventListener('click',function() {
                // 获取输入的内容
                var unames = uname.value
                var subjects = subject.value 
                var scores = score.value
                //把内容给datas
                datas.push({
                    name: unames,
                    subject: subjects,
                    score: scores
                })
                console.log(datas);
            })


            // 2 放到tbody里
            var tbody = document.querySelector('tbody');
            // 遍历一遍数组,有多长(多少人)就加多少行
            for (var i = 0; i < datas.length; i++) {
                var tr = document.createElement('tr');//创建行
                tbody.appendChild(tr);//添加行
                //数组里面每个对象有多少个属性,有多少个就加几个td  datas[i]数组的每个对象
                //遍历数组里的对象(遍历对象),有多少行就遍历多少遍
                for (var k in datas[i]) {//外面的for管tr,里面的for管td
                    var td = document.createElement('td');//创建td
                    td.innerHTML = datas[i][k];//为td添加值
                    tr.appendChild(td);//添加td
                }
                //创建每行最后一个单元格(td)
                var td = document.createElement('td');
                td.innerHTML = "删除";
                tr.appendChild(td);
            }

img

img

想不到好方法,不太懂JavaScript,求解答

能把追加的对象成功生成在表单

  • 写回答

2条回答 默认 最新

  • ㍿532 2022-10-09 13:24
    关注

    已解决

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

问题事件

  • 系统已结题 10月17日
  • 已采纳回答 10月9日
  • 创建了问题 10月9日

悬赏问题

  • ¥15 matlab不知道怎么改,求解答!!
  • ¥15 永磁直线电机的电流环pi调不出来
  • ¥15 用stata实现聚类的代码
  • ¥15 请问paddlehub能支持移动端开发吗?在Android studio上该如何部署?
  • ¥20 docker里部署springboot项目,访问不到扬声器
  • ¥15 netty整合springboot之后自动重连失效
  • ¥15 悬赏!微信开发者工具报错,求帮改
  • ¥20 wireshark抓不到vlan
  • ¥20 关于#stm32#的问题:需要指导自动酸碱滴定仪的原理图程序代码及仿真
  • ¥20 设计一款异域新娘的视频相亲软件需要哪些技术支持