嗨,我现在尝试了几个小时,在附加文本字符串后再次删除它。

我有一个处理手风琴的脚本,其中的文本有些多余。因此,我想在打开或关闭手风琴行时添加和删除多余的文本。

这是我的代码:

var redundantText = "text text text <a href=\"#contact\">Contact Me</a> text text text";

$('#collapse_1').on('show.bs.collapse', function() {
  $(".dropdown_collapse_1").addClass("dropdown-indicator");
  $(".dropdown_collapse_1").removeClass("dropdown-collapsed");
  $("#redundant_text_wrapper").append(redundantText);
});
$('#collapse_1').on('hide.bs.collapse', function() {
  $(".dropdown_collapse_1").addClass("dropdown-collapsed");
  $(".dropdown_collapse_1").removeClass("dropdown-indicator");
  $("#redundant_text_wrapper").text().replace(redundantText, '');
});


追加工作正常,但text()。replace()无效。因此,如果我多次打开和关闭手风琴行,它总是会附加redundantText,但永远不会删除它,以使redundantText变得更加冗余。

编辑:
将“ redundantText”更改为冗余文本。仍然不起作用

编辑2:

$("#redundant_text_wrapper").text($("#redundant_text_wrapper").text().replace(redundantText,''));


也无济于事,它只会删除链接,但文本会保留

编辑3:

$( "#redundant_text_wrapper").text(function(index, currentText) {
    return currentText.replace(redundantText,'');
});


也只删除链接,文本停留

最佳答案

应该是:

$( "#redundant_text_wrapper").text( $( "#redundant_text_wrapper").text().replace('redundantText','') ) ;


或者,如果您想替换所有出现的内容:

$( "#redundant_text_wrapper").text( $( "#redundant_text_wrapper").text().replace(/redundantText/g,'') ) ;

09-12 06:59