Как убрать текст из строки
<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, время: 06:27. |