[英]Get the value of table cell in a row (JS or jQuery)
我有一張桌子,其中包含 50 個相同的
<tr>
<td>#</td>
<td>#</td>
<td>123123</td>
</tr>
...
現在我可以像這樣獲取特定行的值
$("#tableId tbody tr").each(function(){
var a = $(this).children();
var arr =a[2].innerText; //get each row
a[2].innerText = statename // get the third cell in each row
});
在這種情況下, statename
是一個具有 50 個狀態名稱的對象。 我現在要做的就是將123123
替換為對象內的每個狀態名稱。 所以它看起來像這樣:
<tr>
<td>#</td>
<td>#</td>
<td>Alabama</td>
</tr>
<tr>
<td>#</td>
<td>#</td>
<td>Alaska</td>
</tr>
<tr>
<td>#</td>
<td>#</td>
<td>Arizona</td>
</tr>
...
我試圖在 jQuery 中循環,但沒有奏效。 請幫忙,非常感謝。
您可以嘗試將each
方法與find
方法一起使用,在選擇器名稱中,您可以通過td:last
搜索最后一個<td>
元素。 像這樣:
var statenames = ['Alabama', 'Alaska', 'Arizona']; $("#tableId tbody tr").each(function(index){ $(this).find('td:last').text(statenames[index]); });
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script> <table id="tableId"> <tbody> <tr> <td>#</td> <td>#</td> <td>123123</td> </tr> <tr> <td>#</td> <td>#</td> <td>123123</td> </tr> <tr> <td>#</td> <td>#</td> <td>123123</td> </tr> </tbody> </table>
通過使用 vanilla js,您可以輕松獲取 tr 中的最后一個 td 元素,遍歷它們並為節點分配新值
const stateNames = ['Alabama', 'Alaska', 'Arizona']; document.querySelectorAll('tr td:last-child') .forEach((x, i) => x.textContent = stateNames[i])
<table> <tr> <td>#</td> <td>#</td> <td>123123</td> </tr> <tr> <td>#</td> <td>#</td> <td>123123</td> </tr> <tr> <td>#</td> <td>#</td> <td>123123</td> </tr> </table>
確保您的變量statename
是一個數組,並且不要忘記狀態的索引
// find elements
statename = ["Alabama", "Alaska", "Arizona"]
$("#tableId tbody tr").each(function(index){
var a = $(this).children();
var arr =a[2].innerText; //get each row
a[2].innerText = statename[index] // get the third cell in each row
});
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.