Удаление числовых предварительных тегов с помощью Jquery - PullRequest
1 голос
/ 17 декабря 2011

Есть ли способ удалить предварительные теги, которые покрывали числовые значения, с помощью Jquery?

Например, у меня есть следующий контент:

<code><pre>1000

Мне нужно удалить теги PRE с помощью Jquery ..

Как я могу это сделать?

Заранее спасибо ...

Ответы [ 4 ]

4 голосов
/ 17 декабря 2011

(Обратите внимание, Дэвид Томас дает хороший пример того, как использовать .unwrap() с firstchild.)

Там .unwrap():

$("pre").wrapInner('<div>').find('div').unwrap();

http://jsfiddle.net/c4j77/

Вы также можете сделать это:

$("pre").parent().each(function(){
    $(this).text($(this).text());
});

http://jsfiddle.net/c4j77/1/

2 голосов
/ 17 декабря 2011

Я думаю, что следующее будет работать, чтобы развернуть textNode:

$('pre').each(function(){
    $(this.firstChild).unwrap();
});

Поскольку я не знаю, будут ли все элементы pre чисто числовыми, я добавил проверку if, чтобы посмотреть, содержит ли элемент буквенные символы (az, верхний и строчные буквы):

$('pre').each(function(){
    var text = $(this).text();
    if (text.match(/[a-z]/gi)){
        // you've got a string with letters
    }
    else {
        $(this.firstChild).unwrap();
    }
});

Демонстрация JS Fiddle .

1 голос
/ 17 декабря 2011

Так просто:

$("pre").contents().unwrap();

http://jsfiddle.net/c4j77/3/

0 голосов
/ 17 декабря 2011
$("#element").html($("#element").html().replace(/<\/?pre>/i, ''));
...