簡體   English   中英

獲取表中的tds值

[英]Get values of tds in a table

好的,你可以在我的小提琴中看到我試圖操縱左表,以便最后看起來像右邊的表: http//jsfiddle.net/SULK3/2/

要做到這一點,我首先嘗試通過它們獲取td s循環的值,並查找日期並更改我得到的數據上的rowspans:所以我開始使用普通表和此代碼:

var values = [];
   var table = $(this).closest("table");
   table.find("tr").each(function() {
      values.push($(this).find("td:first").html());
   });

$('#values').text(values); 

但不知怎的,它不會工作,行的值不會在具有id值的div中被忽略! 為什么? (如果你有想法如何解決我的'大'問題,請在這里發布!)謝謝

在這一行

var table = $(this).closest("table");

是什么this 在小提琴中,它是沒有最近表的窗口,因為nearest()表示最接近的父元素?

因為只有一個表 ,所以只有兩個表,只需將其更改為

var table = $('table:first')

似乎工作:

小提琴

您可能會嘗試使用您正在構建的陣列來完成此任務。 而且只是想知道為什么價值沒有出現在#values

我不確定所以我開始研究解決方案..我回來看你已經標記了一個接受的答案,這個答案很棒,一定是你要找的。

我不希望或希望您將此標記為已接受的答案,但我很樂意嘗試找到解決方案,所以在這里你去:

var dateCount = 0;
var addtoTr = 0;
var table = $("table:first");
var date = table.find('tr:first').find('td:first').html();

   table.find("tr").each(function(index) {
       if(date === $(this).find("td:first").html() || date === ''){
        dateCount++;
       }
       else{
          table.find('tr').eq(addtoTr).prepend('<td rowspan='+dateCount+'>'+date+'</td>');
          dateCount = 1;
          date = $(this).find("td:first").html();
          addtoTr = index;
       } 
       $(this).find("td:first").remove();
   });
   table.find('tr').eq(addtoTr).prepend('<td rowspan='+dateCount+'>'+date+'</td>');

http://jsfiddle.net/SULK3/6/

這只是一種方法。我相信還有很多其他的,更好的方法。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM