在特定div';使用Javascript创建元素
我知道如何将一个元素附加到另一个元素中,但如何指定要将其附加到哪个类 例如:在特定div';使用Javascript创建元素,javascript,html,css,Javascript,Html,Css,我知道如何将一个元素附加到另一个元素中,但如何指定要将其附加到哪个类 例如: <div class="main" id="11"> <div class="somethingelse> <div class="moreThings"> /*How to append to this class?*/ </div> <div class="extraThings">
<div class="main" id="11">
<div class="somethingelse>
<div class="moreThings">
/*How to append to this class?*/
</div>
<div class="extraThings">
</div>
</div>
</div>
可能有数百个同名的类,这就是为什么我需要用id来定义它们
目前,我将img附加到其他div下,但我想将其附加到“morethings”中。我该怎么做呢?您可以这样做:
var x = document.createElement("IMG");
x.setAttribute("src", "../truck.png");
document.getElementById(order_id).appendChild(x);
document.getElementById("btn_transport_"+order_id).style.display = "none";
document.getElementById(order_id).getElementsByClassName("moreThings")[0].appendChild(x);
确保getElementsByClassName(“moreThings”)
至少返回一个元素
您可以从中找到有关getElementsByClassName(…)
的更多信息。其要点是:
返回具有所有给定类名的所有子元素的类似数组的对象
你可以这样做:
var x = document.createElement("IMG");
x.setAttribute("src", "../truck.png");
document.getElementById(order_id).appendChild(x);
document.getElementById("btn_transport_"+order_id).style.display = "none";
document.getElementById(order_id).getElementsByClassName("moreThings")[0].appendChild(x);
确保getElementsByClassName(“moreThings”)
至少返回一个元素
您可以从中找到有关getElementsByClassName(…)
的更多信息。其要点是:
返回具有所有给定类名的所有子元素的类似数组的对象
你可以用。它允许类似CSS的选择器。在你的情况下,它可能看起来像
const myElementToAppendTo = document.querySelector('#myID .morethings');
myElementToAppendTo.appendChild(x);
你可以用。它允许类似CSS的选择器。在你的情况下,它可能看起来像
const myElementToAppendTo = document.querySelector('#myID .morethings');
myElementToAppendTo.appendChild(x);
为什么数组[0]?@Luke
getElementsByClassName(…)
返回具有该类名的所有元素的列表,我使用[0]
获取该列表中的第一个元素。@Luke我很高兴能帮上忙。祝你好运。为什么数组[0]?@LukegetElementsByClassName(…)
返回具有该类名的所有元素的列表,我使用[0]
获取该列表中的第一个元素。@Luke我很高兴能帮上忙。祝你好运。我认为在HTML中使用ID是不好的做法,请参阅:@NielsBom那个问题是关于CSS代码而不是JavaScript。你仍然在用ID创建HTML元素,对吗?都是HTML。@NielsBom是的,但说到JavaScript,ID非常有用。我认为在HTML中使用ID是不好的做法,请参阅:@NielsBom,问题是关于CSS代码而不是JavaScript。您仍然在使用ID创建HTML元素,对吗?都是HTML。@NielsBom是的,但说到JavaScript,ID非常有用。