我有一个动态表日历,当那天没有任何事件时,会显示一行“今天没有事件”。
我正在尝试删除此特定内容的TR 包含紧接在其上方的TR,但是当特定TR显示“No Events Today”时仅。< / p>
这是我到目前为止提出的jQuery的一半,因为它删除了内容,但我也需要你帮助删除日期。
$("tr td:contains('No events today')").parent().remove();
我的Demo
这是表格的例子:
<table>
<tr>
<td class="CalendarEventDate" colspan="3">Saturday, March 1 2014</td>
</tr>
<tr>
<td class="CalendarNoEvent" colspan="3">No events today</td>
</tr>
<tr>
<td class="CalendarEventDate" colspan="3">Sunday, March 2 2014</td>
</tr>
<tr>
<td class="CalendarEventTime">All Day</td>
<td class="CalendarEventName"><a href="http://www.example.com">Event Name Here</a></td>
<td class="CalendarEventLocation">Remote</td>
</tr>
</table>
答案 0 :(得分:0)
你想删除tr-element的前一个兄弟,它也用“今天没有事件”封装了td元素。
jQuery提供.prev()函数。
像这样的工作:
$("tr td:contains('No events today')").parent().prev().remove();
答案 1 :(得分:0)
$("tr td:contains('No events today')").parent().hide().prev('tr').hide()
答案 2 :(得分:0)
我认为您正在寻找jQuery.prev。请参阅以下示例。
//Find the first td.
var tr = $("tr td:contains('No events today')").parent();
//Find the previous element and remove it from the DOM.
tr.prev().remove();//Could be written tr.prev(".CalendarEventDate").remove();
//No remove the first td from the DOM.
tr.remove();