一颗刘溜梅
2022-05-24 17:17
采纳率: 100%
浏览 812
已结题

js报错Cannot read properties of null (reading 'appendChild')

问题遇到的现象和发生背景 将dl标签加入chooseArea父标签,加入报错Cannot read properties of null (reading 'appendChild')
问题相关代码,请勿粘贴截图

chooseArea();
function chooseArea(){
// 获取chooseArea容器
var chooseArea = document.querySelector('.wrap .main .mainCon .infoWrap .chooseWrap .choose .chooseArea');

                // 获取数据
                var crumbData = goodData.goodsDetail.crumbData;
                // 遍历数组
                crumbData.forEach(function(item){
                    // 创建dl容器
                    var dlNode = document.createElement('dl');
                    // var dlNode = document.querySelectorAll('.mainCon .chooseWrap .choose .chooseArea dl')[0];
                    // 创建dt
                    var dtNode = document.createElement('dt');
                    // 将每一个对象中的title的属性,作为dt的文本
                    dtNode.innerHTML = item.title;
                    dlNode.appendChild(dtNode);
                    // 遍历每个对象的data,这里的item对应每一个对象的选项的文本
                    item.data.forEach(function(item){
                        // 创建dd
                        var ddNode = document.createElement('dd');
                        ddNode.innerHTML = item;
                        dlNode.appendChild(ddNode);
                        // console.log(ddNode);
                    });
                    chooseArea.appendChild(dlNode);
                    // console.log(dlNode);
                })
                console.log(chooseArea);
            }
运行结果及报错内容

尚品汇.html:462 Uncaught TypeError: Cannot read properties of null (reading 'appendChild')

我的解答思路和尝试过的方法

1.将js代码放在了body标签外面 没有解决

我想要达到的结果

chooseArea.appendChild(dlNode);实现将dlNode节点放入chooseArea

1条回答 默认 最新

相关推荐 更多相似问题