用特定文本替换元素

时间:2014-02-05 16:34:23

标签: jquery

我正在尝试使用特定文本更改所有dd,在此示例中,从dd到dt元素的“颜色”。

   <dl>
    <dd><a>color</a></dd>
    <dd><a>green</a></dd>
    <dd><a>blue</a></dd>
   </dl>

   <dl>
    <dd><a>color</a></dd>
    <dd><a>red</a></dd>
    <dd><a>orange</a></dd>
   </dl>

最好的方法是什么?

由于

2 个答案:

答案 0 :(得分:1)

尝试使用wrap()/ unwrap()

$('dl dd').filter(function(){
    return $.trim($(this).text()) == 'color'
}).wrapInner('<dt />').contents().unwrap()

演示:Fiddle

答案 1 :(得分:0)

$('dd').each(function() {
    if ( $.trim($(this).text()) == 'color' ) 
        $(this).replaceWith($('<dt>' + this.innerHTML + '</dt>'));
});

FIDDLE