JQuery .insertAfter()DOM元素

时间:2011-03-01 08:43:32

标签: jquery

我有一个HTML表,我想在其中使用JQuery操作

表:

<Table>

<TR>

<TD><div class=ExternalClass00FA6D5A488C4B2582667D6D8DF15F79>Value 1</div></TD>

<TD class="ms-disc-bordered-noleft">Value 2</TD>

<TD class="ms-disc-bordered-noleft">Value 3</TD>

<TD class="ms-disc-bordered-noleft">
<A HREF="/Threaded.aspx?RootFolder=%2fLists&amp;FolderCTID=0x01200">Value 4</A>
</TD></TR>  
...............
<TR>

<TD><div class=ExternalClass00FA6D5A488C4B2582667D6D8DF15F79>Value 1</div></TD>

<TD class="ms-disc-bordered-noleft">Value 2</TD>

<TD class="ms-disc-bordered-noleft">Value 3</TD>

<TD class="ms-disc-bordered-noleft">
<A HREF="/Threaded.aspx?RootFolder=%2fLists&amp;FolderCTID=0x01200">Value 4</A>
</TD></TR>

........and so on 

</Table>

我正在尝试选择“值4”,最后一个字符串“FolderCTID”在href中,insertBefore“Value 1”,div类以“ExternalClass”开头。

我想在行中的每个元素之前插入到同一行中的相应元素

我正在使用以下代码:

$('a[href*="FolderCTID"]').insertBefore($('div[class^="ExternalClass"]')); 

但是它插入了每一行的所有元素....我想我应该做一些事情来指定实体并循环实体的每一端......

请帮我解决这个问题

1 个答案:

答案 0 :(得分:1)

你必须只在当前的tr中查找ExternalClass,这样你就可以做这样的事情作为一个起点:

$.each($('a[href*="FolderCTID"]'), function() {
    $(this).insertBefore($(this).parents('tr').find('div[class^="ExternalClass"]'));
});