Как убрать текст из строки
<div class="t706__cartwin-totalamount-info" style="font-size: 14px; padding-bottom: 10px; font-weight: 400; display: block;">Сумма: 1 975 р.<br>Промо код: LOWO500<br>Скидка: 500 р.<br>Сумма со скидкой: 1 475 р.<br></div> Нужно убрать Сумма со скидкой: 1 475 р.<br> строку. Пробывал через
text.replace('Сумма со скидкой: 1 475 р.<br>','');
Не выходит, сумма всегда меняется нужно как то по другому. Подскажите пожалуйста. |
Цитата:
<br>...<br> Например так...
<div id='test'>Сумма: 1 975 р.<br>Промо код: LOWO500<br>Скидка: 500 р.<br>Сумма со скидкой: 1 475 р.<br></div>
<script type='text/javascript'>
var o=document.getElementById('test');
var txt=o.innerHTML;
txt=txt.replace(/<br>[^<]*?<br>$/,'<br>');
o.innerHTML=txt;
</script>
|
Или просто удалить две последние текстовые ноды...
<div id='test'>Сумма: 1 975 р.<br>Промо код: LOWO500<br>Скидка: 500 р.<br>Сумма со скидкой: 1 475 р.<br></div>
<script type='text/javascript'>
var o=document.getElementById('test');
o.removeChild(o.lastChild);
o.removeChild(o.lastChild);
</script>
|
Цитата:
|
Цитата:
Цитата:
Если тебе нужно удалить еще одну текстовую ноду - удали еще раз. Выше есть пример с replace()... ;) |
Делаю так
var ol = document.getElementByСlass("t706__cartwin-totalamount-info");
var slot=ol.innerHTML;
slot=slot.replace(/<br>[^<]*?<br>$/,'<br>');
ol.innerHTML=slot;
Удаление нет! |
Цитата:
text.replace(/Сумма со скидкой: .*<br>/,''); |
Цитата:
Если ты что-то пишешь английскими буквами это не становится программой. :no: Нет такого метода getElementByСlass()... :no: Есть getElementsByСlass(). И он возвращает целую коллекцию элементов. Т.ч. обращаться к ним нужно как к элементам массива. var slot=ol[0].innerHTML; |
Цитата:
Сравни свой вариант и мой. ;) |
Цитата:
Но спасибо, что сказал про хороший тон - я этого не знал! UPDATE: Блин, что-то уже и мой вариант с ним не работает:) Я предложил вариант, где text - это весь HTML, а не только содержимое тега div. |
| Часовой пояс GMT +3, время: 21:25. |