jquery如何遍歷table,並對table里的某一個單元格進行操作


1、如何根據每一行的某一列的值進行比較或其他操作,進而修改另一列的值或屬性。

 
         
$("#table_id tbody tr").each(function(){
            var a = $(this).children();//獲取每一行
            var arr =a[2].innerText;//取得第三列的值
       if(arr......比較)
            a[1].firstElementChild.setAttribute("checked","checked");
                //給第二列添加一個屬性checked
        });
table_id是table的id,接着tbogy tr是為了更進一步找到這元件。
 

2、如何對table中checkbox復選框進行操作。下面介紹如何獲取被選中的復選框的有關信息。

其實也可以像上述進行遍歷整個table,然后根據被選中的行,取當前行的另一列的值。我在這里是直接遍歷checkbox這一列,然后在checkbox的value中賦值想要得到的數據。通過遍歷,取該value。

 
         
$("#sample-table-1 tbody input[type='checkbox']").each(function(){
            if($(this).is(':checked')){
                approver=approver+$(this).val()+",";
            };
        });
<td>
  <input type="checkbox" name="approver" value="${user.id}:${user.username}">
</td>

判斷是否被選中,用$("...").is(':checked')來判斷。

 

還有其他的方法對table的遍歷,比如:

 $("#table_id").children("tr")獲取tr的list列表
然后用for循環遍歷整個list,list中的每一個都是一行,那么可以通過children的方法獲取到這一行中的所有孩子,就每一行的每一個字段(列),
var tdArr = trList.eq(i).find("td");
tdArr.eq(0)表示該行的第一列,后面緊接着是操作。
代碼如下:
var trList = $("#table_id").children("tr")
    for (var i=0;i<trList.length;i++) {
        var tdArr = trList.eq(i).find("td");
        var a = tdArr.eq(0).find('input').val();
    }

另外,也可以這樣,
$("#history_income_list").find("tr").each(function(){
        var tdArr = $(this).children();
        var a = tdArr.eq(0).find('input').val();
});

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM