Замена текста на странице без селектора на js/JQuery

274
25 сентября 2017, 04:24

Как с помощью js/JQuery найти на странице текст и заменить его на другой без селекторов, к примеру где то на странице есть текст:

TEXT_1 который надо заменить на TEXT_2, есть ли какой то способ это сделать?

Answer 1

использовать String.prototype.replace() например.

var text = $('.post-text'); 
var replaced = text.html().replace(/TEXT_1/gi, 'TEXT_2'); 
text.html(replaced);
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
<div class="post-text" itemprop="text"> 
 
  <p>Как с помощью js/JQuery найти на странице текст и заменить его на другой без селекторов, к примеру где то на странице есть текст:</p> 
 
  <p>TEXT_1 который надо заменить на TEXT_2, есть ли какой то способ это сделать?</p> 
</div>

Answer 2

Как уже сказал Алексей, без метода replace тут не обойтись, приведу немного другой пример (возможно не самый эстетически красивый, но имеющий место быть в качестве примера):

function replaceText() { 
  // берем тело документа, найдем каждый элемент на нем и для каждого вызовем функцию 
  $(document.body).find('*').each(function() { 
    var text = $(this).text(); // берем текст текущего элемента 
    text = text.replace(/111/g, "222"); // заменяем необходимое 
    $(this).text(text); // выставляем новый текст в элемент 
  }); 
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<body> 
  <p>Hello world! I want to replace '111' to '222'. Can do you help me?</p> 
  <div> 
    I am '111'! Replace me! 
  </div> 
  <br> 
  <button onclick="replaceText();">Replace text...</button> 
</body>

Думаю, также будет полезно ознакомиться с флагами в регулярных выражениях.

'g' - если этот флаг есть, то ищются все совпадения, иначе – только первое.

READ ALSO
Как взять данные из БД с помощью JavaScript-а

Как взять данные из БД с помощью JavaScript-а

Есть функция, которая берет данные из json файла и делает с этими данными какие-то действияКак сделать так, что бы можно было брать данные из БД и делать...

197
PHP Instagram API invalid media_id

PHP Instagram API invalid media_id

Здравствуйте, при запросе к api, выводится такая ошибка:

227
Объединить два массива в один по ключам

Объединить два массива в один по ключам

У них manager_customer_id одинаковые ни как не могу сообразить как объединить, что бы получилось

249
Ajax выдает ошибку

Ajax выдает ошибку

Доброго времени суток! Сразу предупрежу на всякий случай, что я в веб разработке новичок ) Возникла проблема с Ajax (как раз занимаюсь изучением)А...

206