【发布时间】:2016-07-28 19:33:34
【问题描述】:
我有以下 JS 代码,我在其中尝试将这些元素附加到 DOM。我已经这样做了,但是我试图弄清楚如何使用循环来附加这些以遵循 DRY 原则。我只能用香草JS。
var divOne = document.getElementById('buttonHolder');
var btnGroupOne = document.createElement('div')
btnGroupOne.className = 'btn-group';
divOne.appendChild(btnGroupOne);
var btnOne = document.createElement('button');
var textOne = document.createTextNode('1');
btnOne.appendChild(textOne);
btnOne.className = 'btn btn-default';
btnGroupOne.appendChild(btnOne);
var btnTwo = document.createElement('button');
var textTwo = document.createTextNode('2');
btnTwo.appendChild(textTwo);
btnTwo.className = 'btn btn-default';
btnGroupOne.appendChild(btnTwo);
var btnThree = document.createElement('button');
var textThree = document.createTextNode('3');
btnThree.appendChild(textThree);
btnThree.className = 'btn btn-default';
btnGroupOne.appendChild(btnThree);
var btnFour = document.createElement('button');
var textFour = document.createTextNode('4');
btnFour.appendChild(textFour);
btnFour.className = 'btn btn-default';
btnGroupOne.appendChild(btnFour);
<div id="buttonHolder"></div>
【问题讨论】:
-
您能否展示您尝试编写的代码以避免重复代码并解释哪些不起作用?
-
for-loop怎么样? -
你真的不需要循环。使用您拥有的代码创建一个名为
createDefaultBtn的函数,该代码接受文本节点值并返回一个新的默认按钮元素,您可以将其添加到父元素中。
标签: javascript loops dry dom-manipulation