Удаление дочерних элементов
Есть вот такой HTML:
<p id = "id1">текст1 <p>текст2</p> </p> И есть "функция": function replaceNodeText(id, newText){ node = document.getElementById(id); while (node.lastChild){ node.removeChild(node.lastChild); } node.appendChild(document.createTextNode(newText)); } //вызываю replaceNodeText("id1", "Новый текст"); В результате вместо ожидаемого <p id = "id1">Новый текст</p> получается <p id = "id1">Новый текст <p>текст2</p> </p>. Дело вроде в неправильном HTML, но в чем именно? |
Цитата:
|
Ramundo, что на самом деле в браузере
<p id="id1">текст1 </p> <p>текст2</p> <p></p> |
Цитата:
<head> <script>window.onload = function(){alert(document.body.innerHTML)}</script> <body> <p id = "id1">текст1 <p>текст2</p> </p> </body> |
danik.js,
твоё сообщение о чём и кому? |
|
Блин, че за дела? Вот ведь файл:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> <html> <head> <title>JS Testing</title> <center><h3>Сайт</h3></center> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> </head> <body> <p id = "id1">текст1 <p>текст2</p> </p> <script type = 'text/javascript'> function replaceNodeText(id, newText){ node = document.getElementById(id); while (node.lastChild){ node.removeChild(node.lastChild); } node.appendChild(document.createTextNode(newText)); } replaceNodeText("id1", "ololo"); function removeChildren(id) { node = document.getElementById(id); var children = node.childNodes; for(var i=0;i<children.length; i++) { var child = children[i]; node.removeChild(child); } } //removeChildren("id1"); </script> </body> </html> |
Ramundo,
ну нехотят браузеры в параграф параграфы вставлять |
Ramundo,
и в таблицу div не хотят- это так на всякий |
Блин, надо же было проверить код именно на параграфах... Спасибо, и за div тоже:)
|
Часовой пояс GMT +3, время: 07:10. |