Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/460.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jsf-2/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何修复appendChild()以创建div元素节点?_Javascript_Createelement - Fatal编程技术网

Javascript 如何修复appendChild()以创建div元素节点?

Javascript 如何修复appendChild()以创建div元素节点?,javascript,createelement,Javascript,Createelement,我已经编写了一个代码,它将通过单击按钮创建一个新的div元素,但它不起作用 函数addBox1(){ var btn=document.createElement(“div”); 警报(“成功单击”); btn.setAttribute(“类”、“内容”); document.getElementByClass('auto-grid').appendChild(btn); } .auto-grid{ 显示:网格; 网格模板柱:1fr 1fr 1fr 1fr; 填充:20px; 边框:1px纯黑

我已经编写了一个代码,它将通过单击按钮创建一个新的div元素,但它不起作用

函数addBox1(){
var btn=document.createElement(“div”);
警报(“成功单击”);
btn.setAttribute(“类”、“内容”);
document.getElementByClass('auto-grid').appendChild(btn);
}
.auto-grid{
显示:网格;
网格模板柱:1fr 1fr 1fr 1fr;
填充:20px;
边框:1px纯黑;
}
.自动网格分区{
最小高度:200px;
边框:2倍纯红;
}
添加框

在名为
getElementByClass
的接口中没有成员函数。它应该是返回找到的元素而不是单个元素的元素


相反,您可以使用as bellow或
document.getElementsByCassName('auto-grid')[0]
从集合中获取第一个元素

函数addBox1(){
var btn=document.createElement(“div”);
警报(“成功单击”);
btn.setAttribute(“类”、“内容”);
document.querySelector('.auto grid').appendChild(btn);
}
.auto-grid{
显示:网格;
网格模板柱:1fr 1fr 1fr 1fr;
填充:20px;
边框:1px纯黑;
}
.自动网格分区{
最小高度:200px;
边框:2倍纯红;
}
添加框

在名为
getElementByClass
的接口中没有成员函数。它应该是返回找到的元素而不是单个元素的元素


相反,您可以使用as bellow或
document.getElementsByCassName('auto-grid')[0]
从集合中获取第一个元素

函数addBox1(){
var btn=document.createElement(“div”);
警报(“成功单击”);
btn.setAttribute(“类”、“内容”);
document.querySelector('.auto grid').appendChild(btn);
}
.auto-grid{
显示:网格;
网格模板柱:1fr 1fr 1fr 1fr;
填充:20px;
边框:1px纯黑;
}
.自动网格分区{
最小高度:200px;
边框:2倍纯红;
}
添加框

该函数被调用:getElementsByCassName()并返回一个列表。在您的情况下,您需要获取该列表的第一个元素以获取div:

document.getElementsByClassName('auto-grid')[0].appendChild(btn);

函数名为:getElementsByCassName(),并返回一个列表。在您的情况下,您需要获取该列表的第一个元素以获取div:

document.getElementsByClassName('auto-grid')[0].appendChild(btn);

如果同一类中有多个元素,那么就有一个数组来遍历它们

var aGrids=document.querySelectorAll('.auto-grid');
    for(var i=0;i<aGrids.length;i++){
    aGrids[i].appendChild(btn);
}
var aGrids=document.querySelectorAll('.auto-grid');

对于(var i=0;i,如果同一类中有多个元素,那么就有一个数组来遍历它们

var aGrids=document.querySelectorAll('.auto-grid');
    for(var i=0;i<aGrids.length;i++){
    aGrids[i].appendChild(btn);
}
var aGrids=document.querySelectorAll('.auto-grid');

对于(var i=0;i
document.getElementsByClass('auto-grid')[0].appendChild(btn);
document.querySelector('auto-grid').appendChild(btn);
document.querySelector('auto-grid').appendChild(btn);
document.getElementsByClass('auto-grid').appendChild(btn);