我有一个jQuery表达式,它搜索特定的文本,然后将其包装在div中以隐藏它。
但是,TD包含此文本的几个实例,并且仅识别第一个实例。
我知道我需要使用.each遍历它们,但是我不确定如何实现这一点。不幸的是,文本没有被分成不同的类或ids,这将使事情变得更容易。
jQuery:
$('td.EventListCalendarItemDefault').html(function (i, t) {
return t.replace('Apr ', '<span class="hidden">Apr </span>');
})
HTML:
<td class="EventListCalendarItemDefault" width="33%" height="70" valign="top" style="border-bottom-style:solid;border-bottom-width:1px;">
<a class="yearViewHeader" href="">April</a><br>
<span class="hidden">Apr </span>01 <a href="" title="2019-04-01, 9:00 AM (UTC+11:00) 2019-04-02, 4:00 PM (UTC+11:00)">Hobart</a><br>
Apr 08 <a href="" title="2019-04-08, 9:00 AM (UTC+10:00) 2019-04-09, 4:00 PM (UTC+10:00)">Sydney</a><br>
Apr 11 <a href="" title="2019-04-11, 9:00 AM (UTC+10:00) 2019-04-12, 4:00 PM (UTC+10:00)">Melbourne</a><br>
Apr 15 <a href="" title="2019-04-15, 9:00 AM (UTC+12:00) 2019-04-16, 4:00 PM (UTC+12:00)">Auckland</a>
</td>
另一种方法是什么?
发布于 2019-07-31 09:58:17
发布于 2019-07-31 10:26:32
试着使用下面的代码。它会解决你的问题。您必须使用不区分大小写的替换,如下所示。
var replaceStr = 'Apr ';
$('td.EventListCalendarItemDefault').html(function (i, t) {
return t.replace(new RegExp("\\b"+replaceStr+"\\b"), '<span class="hidden">Apr </span>');
})
https://stackoverflow.com/questions/57288008
复制