重复追加子项 x 次
repeat appendChild x times
本文关键字:追加 更新时间:2023-09-26
我把这个简单的代码包装在一个函数里:
slots = timeset / 2;
var oneslot = document.createElement("option");
document.getElementById('presentingslots').appendChild('oneslot');
变量插槽变化明显。我想附加儿童插槽 x 次,其中 x = 插槽我该怎么做?
如果slots
很小,你可以侥幸在循环中附加每个元素:
slots = timeset / 2;
for (var i = 0; i < slots; i++) {
var oneslot = document.createElement('option');
document.getElementById('presentingslots').appendChild(oneslot);
}
如果slots
可以很大,那么您需要使用 DocumentFragment:
slots = timeset / 2;
var df = document.createDocumentFragment();
for (var i = 0; i < slots; i++) {
var oneslot = document.createElement('option');
df.appendChild(oneslot);
}
document.getElementById('presentingslots').appendChild(df);
这将更有效,因为 DOM 只更新一次。
试试这个:
slots = timeset / 2;
for (var i = 0; i < slots; i += 1) {
var oneslot = document.createElement("option");
document.getElementById('presentingslots').appendChild('oneslot');
}
您可以使用循环(for,while)来执行此操作。
slots = timeset / 2;
var presentingslots = document.getElementById('presentingslots');
for (var i = 0; i < slots; i++) {
var oneslot = document.createElement('option');
presentingslots.appendChild(oneslot);
}
一个简单的
for 循环就可以了。 您可以设置值以及显示的文本。
var slots = timeset / 2,
el = document.getElementById('presentingslots');
for (var i = 0; i < slots; i++) {
var oneslot = document.createElement('option');
oneslot.text = i;
oneslot.value = 'set my value if you want';
el.appendChild(oneslot);
}
我做了一个简单的jsFiddle来展示。
相关文章:
- 表追加而不附加最后一个元素
- 如何在jquery中停止在更改时追加值
- JQuery.on(“keydown”)追加到页面时不工作
- jQuery[button.class]未检测到用按钮追加行
- 使用jQuery'生成输入字段;s追加
- js”;在“;不按特定顺序追加键/值
- 如何在 ReactJs 中追加到表
- 文本框仅接受十进制值,并且应在十进制后追加2个零
- 为什么DocumentFragment在追加后被清除
- 正在从JQuery追加Laravel Blade
- 有什么方法可以在下一个元素上进行追加吗
- jQuery-根据值在输入字段后追加图像
- jQuery动态使用.append()添加输入,但发布表单不是追加数据
- 追加Jquery后的Binding Click事件不起作用
- 包含数组的对象的QML ListModel追加中断
- JQuery追加到父级,只要它's已创建
- 一个接一个地追加两次
- 如何仅在数组没有的情况下追加到数组't包含带有rethinkDB的值
- Jasmine-无法将元素追加到DOM
- 重置transform:rotate(),方法是移除并追加在追加和重绘图表后未显示数据的画布