2014-04-01 48 views
0

我是jquery noob。jquery:根据另一个表值替换表值

我正在运行一个筹款活动网站,其中包含赞助商名单。

表的数据由第一名称(.col2),姓(.col3)和匿名(.col5)

所以会出现这样的:

<table> 
<tbody> 
<tr> 
    <th>First name</th> 
    <th>Last name</th> 
    <th>Anonymous</th> 
</tr> 

<tr> 
    <td class="col2">John</td> 
    <td class="col3">Smith</td> 
    <td class="col5">Y</td> 
</tr> 

<tr> 
    <td class="col2">Jane</td> 
    <td class="col3">Doe</td> 
    <td class="col5">N</td> 
</tr> 
<tbody> 
</table> 

如何更换。 col2和.col3与“匿名”如果.col5 td值是“Y”

谢谢!

回答

0

尝试

Fiddle Demo

$('td.col5').filter(function() { 
    return $.trim($(this).text()) === 'N'; 
}).prev().text('Anonymous').prev().text('Anonymous'); 


Fiddle Demo

$('td.col5').filter(function() { 
    return $.trim($(this).text()) === 'N'; 
}).closest('tr').find('.col2,.col3').text('Anonymous'); 

Fiddle Demo

$('td.col5').filter(function() { 
    return $.trim($(this).text()) === 'N'; 
}).parent().children('.col2,.col3').text('Anonymous'); 

.filter()

.closest()

.prev()

.text()

.parent()

+0

谢谢指点先生,这个工作就像一个魅力呢! – user3481320

+0

@ user3481320很高兴帮助:) –

0

尝试this

$(".col5:contains('Y'), .col5:contains('y')").each(function(){ 
    var par = $(this).parent(); 
    $(par).find(".col2, .col3").text("Anonymous"); 
}); 
+0

谢谢你亲切的先生。这工作! – user3481320

+0

但包含的问题(“Y”)。它适用于任何带有y字符的文本 –

+0

.Col5将只包含“Y”或“N”,所以这不会成为问题,我想。谢谢奥马尔! – user3481320

相关问题