代码之家  ›  专栏  ›  技术社区  ›  user3108268

从HTML中删除多个元素的字符串

  •  1
  • user3108268  · 技术社区  · 8 年前

    我想删除标题末尾的冒号,所以我使用以下方法:

    $('.title').html($('.title').html().replace(':', ''))
    <script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
    <div class="title">
      Apples:
    </div>
    <div class="title">
      Oranges:
    </div>

    它有效,它删除了冒号,但也取代了第二个标题 Oranges 具有 Apples ?

    https://jsfiddle.net/X528L/8/

    2 回复  |  直到 8 年前
        1
  •  5
  •   Taplar    8 年前

    你可以给 html 一个闭包,一个独立的改变。

    $('.title').html(function(index, currentHTML){
      return currentHTML.replace(/:/g, '');
    });
    <script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
    <div class="title">
    Apples:
    </div>
    <div class="title">
    Oranges:
    </div>
        2
  •  1
  •   Dorado    8 年前

    你很接近。你得到一个集合是因为有多个元素 title 作为类名。我建议迭代元素以替换值。

    $.each($('.title'), function(key, value) {
        $(value).html($(value).html().replace(':',''));
    });