Jquery 如果td img具有特定于类的单词,则将img src替换为td img
如何使用jQuery查找在a类中具有特定文本并替换img src的td?这是HTMLJquery 如果td img具有特定于类的单词,则将img src替换为td img,jquery,Jquery,如何使用jQuery查找在a类中具有特定文本并替换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="RE
<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,在a类中找到“Rams”的文本,并将其替换为新的img,同时找到“Bengals”,并用另一个不同于“Rams”的图像替换该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);
(函数($){
变量名称='Rams';
$('#divID').find('td').filter(函数(){return$(this.text()==name;}).html('');
})(jQuery);
您的代码找到带有文本的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()
,或其他匹配的/regex函数将更可靠地工作
演示:你不知道怎么做哪部分?你试过什么吗?另外,看起来你想在元素中查找文本,而不是在类中,对吗?我可以找到td,但我的尝试是替换整个td,而不仅仅是图像。我看不出每个a类的特定文本在这里的位置?既然img标签不包装a标签,这会起作用吗?你的HTML是不合法的。如果没有
表和tr
s,就不能有td
s。另外,使用==
将不起作用,因为.text()
将返回整个td
中的所有空白,因此它与您的字符串不匹配。您想使用.match()
。演示:我将.text()
的内容打印到控制台,这样您就可以看到它有很多额外的空白。