Удалить двоеточие из части текста через jQuery? - PullRequest
2 голосов
/ 02 сентября 2011

Ранее у меня был похожий вопрос, но он немного другой. Я пытаюсь удалить двоеточие из приведенного ниже ценового кода, используя jQuery.

 <font class="pricecolor colors_productprice">
       <div class="dealtext"></div>
       :  $58.05
 </font>

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

$('.pricecolor:contains(" : ")').remove(colon??);

Это все еще кажется неправильным, возможно, мне нужен набор переменных с get()?

Ответы [ 7 ]

3 голосов
/ 02 сентября 2011
$('*').each(function() {
  $(this).html($(this).html().replace(":", ""));
});
1 голос
/ 22 июня 2012

Я нашел этот вопрос так, как мне было нужно, и в конечном итоге я использовал эту функцию, чтобы сделать нечто подобное ...

$('.pricecolor:contains(" : ")').html(function(index,oldhtml) {
    return oldhtml.replace(' : ','');
});
0 голосов
/ 02 сентября 2011

Сделайте это:

$('.pricecolor:contains(" : ")').text(function(index, text) {
    return text.replace(/:/g, "");
});

Я думаю, что вам нужно передать функцию вместо строки в $ .text (), как это, чтобы избежать искажения другого контента, который был найден с помощью '.pricecolor.: содержит (":") 'селектор.

0 голосов
/ 02 сентября 2011

Это будет работать:

$(".pricecolor:contains(' : ')").each(function(){
    $(this).html($(this).html().replace(" : ", ""));
});
0 голосов
/ 02 сентября 2011
var e = $(".pricecolor:contains(':')");
e.text(e.text().replace(/\s*:\s*/, ''));
0 голосов
/ 02 сентября 2011

Я думаю, что вы можете сделать что-то вроде ниже.

  $(".pricecolor colors_productprice").html($(".pricecolor colors_productprice").html()replace(/:/g, ""))

Надеюсь, это поможет !!

0 голосов
/ 02 сентября 2011
function findAndReplace(elements, textToFind, textToPlace) {
            $.each(elements.contents(), function () {
                // This is added to make sure the nodes you request are text nodes
                if (this.nodeType == 3)
                    this.nodeValue = this.nodeValue.replace(textToFind, textToPlace);
            });

        }

        findAndReplace($('div.dealtext'), ':');
...