通过jQuery从部分文本中删除冒号?

时间:2011-09-02 16:37:04

标签: jquery regex get indexof

我之前发过一个类似的问题,但这有点不同。我希望利用jQuery从以下价格代码中删除冒号。

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

到目前为止,我相信它可能会像这样完成,我只需要另一组眼睛来纠正它:

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

它似乎仍然不正确,也许我需要一个带有get()的变量集?

7 个答案:

答案 0 :(得分:3)

$('*').each(function() {
  $(this).html($(this).html().replace(":", ""));
});

答案 1 :(得分:1)

我发现了这个问题,因为我需要它,我最终使用这个函数来做类似的事情......

$('.pricecolor:contains(" : ")').html(function(index,oldhtml) {
    return oldhtml.replace(' : ','');
});

答案 2 :(得分:0)

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'), ':');

答案 3 :(得分:0)

我认为你可以做类似下面的事情。

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

希望这会有所帮助!!

答案 4 :(得分:0)

var e = $(".pricecolor:contains(':')");
e.text(e.text().replace(/\s*:\s*/, ''));

答案 5 :(得分:0)

这将有效:

$(".pricecolor:contains(' : ')").each(function(){
    $(this).html($(this).html().replace(" : ", ""));
});

答案 6 :(得分:0)

试一试:

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

我认为您需要将函数而不是字符串传递给$ .text(),以避免损坏使用&#39; .pricecolor:contains(&#39;:&#34)找到的其他内容;)&#39;选择器。