JQuery Удаление определенного текста из элемента
Я хочу удалить текст "By:" из элемента на моем веб-сайте. Я хочу, чтобы остальная часть текста оставалась там. Как я могу добиться этого с помощью jQuery? Спасибо.
HTML
<div id="text">By: Anonymous From Minnesota</div>
Я хочу, чтобы это было просто:
<div id="text">Anonymous From Minnesota</div>
Ответы
Ответ 1
Если вы хотите найти каждый элемент с "By:" в нем и удалить его, вы можете попробовать следующее:
$(':contains("By:")').each(function(){
$(this).html($(this).html().split("By:").join(""));
});
Это удаляет любое событие "By:" в любом элементе. Если вы хотите настроить определенный тип элементов, просто измените $(':contains("By:")')
, чтобы включить в себя любой селектор.
Ответ 2
более глобальное решение с использованием регулярных выражений. Это заменит By:
, даже если ваша строковая структура изменится.
var str = $('div').text().replace(/By:/g, '');
$('div').text(str);
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.0/jquery.min.js"></script>
<div id="text">By: Anonymous From Minnesota</div>
Ответ 3
var str = $("#text").text();
$("#text").text(str.substring(3));
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.0/jquery.min.js"></script>
<div id="text">By: Anonymous From Minnesota</div>
Ответ 4
дает уникальный id для div, t:
$('#div_id').html($('#div_id').html().substring(3));
скрипт: http://jsfiddle.net/ChUB4/