使用指定格式的id模式删除两个标记之间的标记

时间:2013-08-27 09:56:24

标签: javascript jquery regex

我想删除两个<tr>代码之间的所有<tr>代码,其ID以此格式id="IT_BGJ_I_...."开头 例如

<tr id="IT_BGJ_I_6262626_IW_7373737_IWL_4></tr>
<tr id="AB_C"></tr>
<tr id="AB_D"></tr>
<tr id="AB_R"></tr>
<tr id="IT_BGJ_I_434343_IW_4343434_IWL_4></tr>
<tr id="IT_BGJ_I_45456_IW_7373737_IWL_4></tr>
<tr id="AB_F"></tr>
<tr id="AB_G"></tr>
<tr id="AB_RE"></tr>
<tr id="IT_BGJ_I_443433_IW_4343434_IWL_4></tr>

我需要删除

  <tr id="AB_C"></tr>
    <tr id="AB_D"></tr>
    <tr id="AB_R"></tr>

<tr id="AB_F"></tr>
<tr id="AB_G"></tr>
<tr id="AB_RE"></tr>

来自他们。 顶部和底部ID将以"IT_BGJ_I_....."格式开头 使用jQuery或javascript

3 个答案:

答案 0 :(得分:4)

您可以使用^ jQuery选择器执行此操作,该选择器指示IDClass或任何attribute开头。

$('tr:not([id^="IT_BGJ_I_"])').remove()

我可以看到您要删除DOMid开头的AB_,因此您可以通过

执行此操作
$('tr:[id^="AB_"])').remove()

答案 1 :(得分:3)

attribute-equals-selector

^ attribute-starts-with-selector

Description: Selects elements that have the specified attribute with 
a value beginning exactly with a given string.

$('tr:not([id^="IT_BGJ_I_"])').remove();

$('tr[id^="AB_"])').remove();

答案 2 :(得分:1)

或尝试:not

$("tr:not([id^='IT_BGJ_I_'])").remove();

小提琴:http://jsfiddle.net/SawmJ/11/