假设我有一个数组。如何将数组中的每个元素包装在span
标记中?另外,如果我想.appendchild
每个span
元素到div元素,我该怎么办呢?
function add_span(arr){
var new_arr= document.createElement("span");// arr is passed in correctly
var text=document.createTextNode(arr); // text cannot be output
new_arr.appendChild(text);
return new_arr;
}
并在主要内容:
for (i = 0; i < unique_array.length; i++)
{
span_array[i]=add_span(unique_array[i]);
}
var cloud_text=document.createTextNode(span_array);
cloud.appendChild(cloud_text);
输出现在看起来像这样:
[object HTMLSpanElement],[object HTMLSpanElement],[object HTMLSpanElement],[object HTMLSpanElement],[object HTMLSpanElement],[object HTMLSpanElement],[object HTMLSpanElement],[object HTMLSpanElement],[object HTMLSpanElement],[object HTMLSpanElement],[object HTMLSpanElement]
答案 0 :(得分:1)
假设您有一个字符串数组:
var arrayExample = ["apple", "orange", "pear"];
遍历数组中的每个字符串:
arrayExample.forEach(main);
将数组字符串项附加到span
对象中,然后附加到div
对象中:
<强>被修改强>
function main(arrayItem, index, array) {
var spanObj = "<span>" + arrayItem + "</span>"
var divObj = document.createElement('div');
divObj.innerHTML = spanObj;
// Do something like:
document.body.appendChild(divObj);
// Replace old array string with new array string wrapped in <span>
arrayExample[index] = spanObj
}
alert(arrayExample); // will output your new Array
答案 1 :(得分:-1)
您希望遍历所有数组元素并将span标记添加到开头和结尾,如下所示:
var example = [];
for(var i = 0; i < example.length; i++) {
example[i] = '<span>' + example[i] + '</span>';
}
这会将html span标记添加到文本中,然后将数组元素添加到文本中。 i
充当您要移动的数组对象的标识符。