如果有特定于类的单词,请将img src替换为td img

时间:2014-08-29 17:22:17

标签: jquery

如何使用jQuery查找在类中具有特定文本并替换img src的td?这是HTML

<td>
 <img src="REPLACE IMG SOURCE WITH NEW IMAGE" class="headshot"></img>
 <a href="#" class="position_def">Rams, St. Louis STL Def</a>
</td>

<td>
 <img src="REPLACE IMG SOURCE WITH NEW IMAGE" class="headshot">
 <a href="#" class="position_def">Bengals, Cincinnati CIN Def</a>
</td>

我想找到td a,在“Rams”的类中找到文本并替换它将是一个新的img,并且还找到“Bengals”并用另一个不同的图像替换img src “公羊”

我尝试了这个但它用图像替换了整个TD

(function($) {
    var name = 'Rams';
    $('#divID').find('td').filter(function() { return $(this).text() == name; }).html( '<img src="MY NEW IMG" "class="detailsimg"/>' );
})(jQuery);

1 个答案:

答案 0 :(得分:2)

您的代码会找到包含文字的td,但您会使用.html(),这适用于找到的td。找到td后,您希望过滤img代码,然后更改src属性:

var name = 'Rams';
$('#divID').find('td').filter(function() {
    return $(this).text().match(name); 
}).children('img').attr('src', "MY NEW IMG" );

请注意,由于==会返回text()标记中的所有空格,因此使用td通常无法正常工作。 .match(),或其他匹配/正则表达式函数将更可靠地工作。

演示:http://jsfiddle.net/jtbowden/1crbvr59/