我只需要一点点调整,我知道所有这些代码都不完美(远非如此)。我没有将数组的内容写入div,而是希望为数组中的每个数字创建一个新div,然后将其添加到卡容器中?
balls90 = [ '1', '2', '3', '4', '5', '6','7','8','9','10','11', '12', '13', '14', '15', '16','17','18','19','20','21', '22', '23', '24', '25', '26','27','28','29','30','31', '32', '33', '34', '35', '36','37','38','39','40','41', '42', '43', '44', '45', '46','47','48','49','50','51', '52', '53', '54', '55', '56','57','58','59','60','61', '62', '63', '64', '65', '66','67','68','69','70','71', '72', '73', '74', '75', '76','77','78','79','80','81', '82', '83', '84', '85', '86','87','88','89','90' ];
function getNumbers(){
var player1 = new Array();
balls90.sort( function() { return Math.random() - .25 } );
for ( var i=1; i<=12; i++ ) {
player1.push(balls90[i]);
document.getElementById("cardContainer").innerHTML+=(balls90[i]);
}
}
答案 0 :(得分:7)
简单的方法,而不是附加到div尝试附加到变量,如
var html='';
for (var i=1; i<=12; i++) {
html+='<div>'+balls90[i]+'</div>';
}
document.getElementById('cardContainer').innerHTML+= html;
答案 1 :(得分:4)
您可以轻松使用document.createElement("div")
和appendChild()
var div = document.createElement("div");
div.innerHTML = (balls90[i]);
cardContainer.appendChild(div);
jsfiddle上的示例。
使用此方法可以让您不必担心令人讨厌的字符串连接。
答案 2 :(得分:1)
您可以使用element.createChild()和element.appendChild()完成此操作。
答案 3 :(得分:1)
试试这个
var full_list = "";
for(var i=0; i<balls90.length; ++i){
full_list = full_list + balls90[i]+ "<br>";
}
$("#cardContainer").html(full_list);
答案 4 :(得分:1)
使用var div = document.createElement('div')
动态创建div,并将数组迭代(值)附加到动态创建的节点var node = document.createTextNode(value[i])
。只需将动态创建的DOM-Element存储到var div之类的变量中。您可以对动态创建的节点执行相同的操作。然后,您可以使用div.appendChild(node)
将节点附加到DOM元素,并将整体附加到父元素。
答案 5 :(得分:0)
document.getElementById("cardContainer").innerHTML += ('<div>'+balls90[i]+'</div>');
如果您希望每个号码都在自己的div
中,请将每个号码换成<div></div>
jsFiddle:http://jsfiddle.net/UjsgY/
答案 6 :(得分:0)
喜欢这个吗?
balls90 = [];
for (var i=0;i<90;i++)balls90[i]=(i+1);
function getNumbers(){
var player1 = new Array();
balls90.sort( function() { return Math.random() - .25 } );
var container = document.getElementById("cardContainer")
var div;
for ( var i=1; i<=12; i++ ) {
player1.push(balls90[i]);
div = document.createElement('div');
div.innerHTML=balls90[i];
container.appendChild(div)
}
}
答案 7 :(得分:0)
如果我理解正确,你想为数组中的每个元素创建一个div。您可以(不)熟悉array.join()
。你需要一个容器来放入内容,我将创建一个容器然后用array.join()
创建单独的div。
var container = document.createElement('div');
//A string containing a series of divs and the contents of the Array.
container.innerHTML = '<div>' + balls90.join('</div><div>') + '</div>';
//append div to body last, to create less DOM refreshes
document.body.appendChild( container );
答案 8 :(得分:0)
//有很多方法可以做到这一点,这是另一个
var div= document.createElement('div'),
txt= document.createTextNode('1'), i= 1, tem,
pa= document.createDocumentFragment();
div.appendChild(txt);
pa.appendChild(div);
while(i<90){
tem= div.cloneNode(true);
tem.firstChild.data=++i;
pa.appendChild(tem);
}
document.getElementById("cardContainer") .appendChild(pa);