2010-01-25 93 views
0

我试图通过表循环来创建一个csv字符串。我通过jquery对表进行了一些排序,因此我希望能够得到最终的排序数据。问题是我想识别每个新行,所以在每行的最后一个td之后添加\ n或其他内容。下面的代码是不正确的。任何指针赞赏。JQuery:在每个循环中获取tr中的最后一个td

function GetCsv() { 
     var strCSV = ''; 
     $('#MyTable tr').each(function() { 
      var lis = $(this).siblings; 
      for (var i = 0; i < lis.length; i++) { 
       strCSV += $(this).find("td").eq(i).html(); 
      } 
      strCSV += 'New line'; 
     }); 
    } 
+0

这样做'$( '#MyTable的TR')每个(函数()'你已经通过了。每个语句循环在本质当你调用'$ (this).siblings',并且迭代这个集合,你仍然可以循环访问tr元素而不是td内容,我认为下面的Reigel的答案适用于你 – 2010-01-25 17:04:25

+0

此外,你错过了'siblings'函数调用中的圆括号。有人,纠正我,如果我错了。 – 2010-01-25 17:08:22

+0

安东是正确的...是我的回答为你工作Israfel ??? – Reigel 2010-01-25 18:15:09

回答

3

尝试:。

function GetCsv() { 
     var strCSV = ''; 
     $('#MyTable tr').each(function() { 
      $(this).children().each(function(){ 
       strCSV += $(this).html(); 
      }) 
      strCSV += 'New line'; 
     }); 
    } 
+0

+1这应该工作。我会声明中间变量'var tds = $(this).children();'以便解决方案尽可能类似于原始帖子。 – 2010-01-25 17:10:54