我可以使用帶有三列的JQuery遍歷id =「tbl」的表,並在三個javascript數組中收集這個值嗎?我可以使用JQuery遍歷表並在三個數組中收集值嗎?
2
A
回答
7
下面是一個例子
的Javascript:
$().ready(function(){
var trArray = []
$('#tbl tr').each(function(){
var tdArray = []
$(this).find('td').each(function(){
tdArray.push($(this).text())
})
trArray.push(tdArray)
})
//console.log(trArray)
for(row = 0; row < trArray.length; row++){
for(cell = 0; cell < trArray[row].length; cell++){
alert('row: '+row+', cell: '+cell+' value: '+trArray[row][cell])
}
}
})
HTML
<table id="tbl" border="1">
<tr>
<td>1</td>
<td>2</td>
<td>3</td>
</tr>
<tr>
<td>4</td>
<td>5</td>
<td>6</td>
</tr>
</table>
0
可以使用this找到第N個元素的「TR」 所以$("#tbl td").eq(2)
都可以獲得3「TD」
0
這樣的事情應該工作。
firstCols = new Array();
secondCols = new Array();
thirdCols = new Array();
$(function() {
$("#tbl tr").each(function(i) {
var firstChild = $(this).children().first();
firstCols[i] = firstChild.text();
secondCols[i] = firstChild.next().text();
thirdCols[i] = firstChild.next().next().text();
});
});
0
當然,您可以:
// Column-arrays
var col1 = new Array();
var col2 = new Array();
var col3 = new Array();
// Cache table
var table = $('#tbl');
// Iteratate over rows
var rows = table.find('tr');
rows.each(function() {
// Iterate over columns
var columns = this.children('td');
// Save column-values in separate arrays
col1.push(columns[0].html());
col2.push(columns[1].html());
col3.push(columns[2].html());
});
+1
這可能不起作用,因爲'tr'元素不是'table'的子元素,而是'tbody'元素的子元素。 – 2011-05-30 10:24:47
+0
你是對的,找到()它是 – marsbear 2011-05-30 11:28:34
0
您可以遍歷列並通過索引組織它。這不是一個語義表,但是如果添加標題/主體,請確保相應地更改選擇器。
var arr = [];
$('#tbl td').each(function(){
var colId = $(this).index();
var rowId = $(this).parent().index();
if (arr[colId] == undefined) {
arr[colId] = [];
}
arr[colId][rowId] = $(this).html();
});
console.log(arr);
這裏的小提琴:http://jsfiddle.net/MfxA9/
這裏的HTML
<table id='tbl'>
<tr>
<td>Col 1 : Row 1</td>
<td>Col 2 : Row 1</td>
<td>Col 3 : Row 1</td>
</tr>
<tr>
<td>Col 1 : Row 2</td>
<td>Col 2 : Row 2</td>
<td>Col 3 : Row 2</td>
</tr>
<tr>
<td>Col 1 : Row 3</td>
<td>Col 2 : Row 3</td>
<td>Col 3 : Row 3</td>
</tr>
<tr>
<td>Col 1 : Row 4</td>
<td>Col 2 : Row 4</td>
<td>Col 3 : Row 4</td>
</tr>
</table>
相關問題
- 1. 我可以使用ng-repeat來遍歷AngularJS中的數組嗎?
- 2. 我可以使用iterable在「foreach」中一遍又一遍地遍歷列表嗎?
- 3. 我可以使用pdb文件來遍歷第三方程序集嗎?
- 4. 可以使用指針來遍歷一個字符數組嗎?
- 5. 如何遍歷表並從三個不同的數組中收集這些字段的值?
- 6. Ruby - 遍歷數組並創建一個三列x行表
- 7. 三維數組遍歷
- 8. 遍歷JS收集
- 9. 我可以使用ExpressJS遍歷查詢字符串參數嗎?
- 10. jquery遍歷數組
- 11. 通過遍歷一個jQuery數組,並使用$ .inArray內
- 12. 遍歷jquery中的數組
- 13. 遍歷數組值
- 14. 使用Javascript/jQuery遍歷嵌套列表並存儲在數組中
- 15. 我可以收集數組中的find(\&wanted,@directories)的輸出嗎
- 16. 循環遍歷數組並檢索值
- 17. PHP遍歷數組並插入鍵/值
- 18. jQuery中的函數可以遍歷元素並顯示/隱藏?
- 19. 我可以使用C++從C#BHO遍歷DOM嗎?
- 20. 我可以使用openmp遍歷C++ 11 std :: tuple嗎?
- 21. 映射兩個數組...現在...我可以映射三個嗎?
- 22. 你可以使用Qt foreach循環遍歷每個可能的枚舉值嗎?
- 23. 使用jQuery遍歷多個html表格
- 24. 遍歷Hashmap並將值存儲在變量中以供使用
- 25. jquery,遍歷json數組
- 26. 遍歷數組並在PHP中創建項目集合?
- 27. 在Swift中遍歷可選數組?
- 28. 使用cin遍歷數組
- 29. 使用變量遍歷數組並顯示匹配JQuery
- 30. 遍歷一個PHP數組比遍歷MySQLi關聯數組更好嗎?
示例代碼,請 – Niklas 2011-05-30 10:10:44
可以呀.... – 2011-05-30 10:13:13
[?這樣(http://jsfiddle.net/4tUww /) – Sylvain 2011-05-30 10:18:59