我需要从列中获取所有值(当然除了标题值),然后使用列值填充数组。我被限制为原生JavaScript。
这是一个表头:
<table id="results" width="360" border="1">
<thead>
<tr>
<th scope="col" width="120">Date Created</th>
<th scope="col" width="120">Name</th>
<th scope="col" width="120">Tests</th>
</tr>
</thead>
</table>
这就是行的创建方式:
var table = document.getElementById("results");
var name = document.getElementById("tbName").value;
var elements = document.getElementsByTagName("select")
var testArray = [];
var test;
for(var i=0; i < elements.length ; i++)
{
testArray[i] = elements[i].value;
}
test = testArray.join(',');
var today = new Date();
var dd = today.getDate();
var mm = today.getMonth()+1;
var yyyy = today.getFullYear();
if(dd<10) {
dd='0'+dd
}
if(mm<10) {
mm='0'+mm
}
today = mm+'/'+dd+'/'+yyyy;
//In the first step using InsertRow function you are creating a first row i.e tr
var row = table.insertRow(table.rows.length);
//In the second step you create a cell i.e td dynamically
var cell1 = row.insertCell(0);
var cell2 = row.insertCell(1);
var cell3 = row.insertCell(2);
// Here in step 3 you can add data to your cells from the modal popup inputs(According to your logic)
cell1.innerHTML = today;
cell2.innerHTML = name;
cell3.innerHTML = test;
我想再次使用列Name
中的值填充数组。
答案 0 :(得分:1)
你去吧。我认为代码是如此描述,它不需要进一步解释:)
var firstCells = document.querySelectorAll('td:nth-child(2)');
var cellValues = [];
firstCells.forEach(function(singleCell) {
cellValues.push(singleCell.innerText);
});
console.log(cellValues);
答案 1 :(得分:0)
//get parent element
parent=document.getElementById("name");
//get all tags inside this element
childs=parent.getElementsByTagName("td or sth like that");
//create an empty array
names=[];
//loop through childs
childs.forEach(child){
//add child balue to array
names.push(child.value);
});
答案 2 :(得分:0)
var table = document.getElementById("result"); //ur table id
var rows = table.getElementsByTagName("tr");
var output = [];
for(var i=0;i<rows.length;i++)
{
output.push(rows[i].getElementsByTagName("td")[1].innerHTML);//instead of 1 pass column index
}
alert(output);