Изменение сгенерённого html
Добрый день)
Представляю вашему вниманию такую вот задачку: Дано: сгенерированная прогой страница, наполненная javaскриптами, которые после отработки в браузере представляются несколькими таблицами с данными. Можно в определённое место этой страницы с помощью той же проги добавить собственный java-скрипт. Вручную добавить в любое место страницы java-script или изменить автоматически-сгенерированный нельзя. Вопрос: можно ли с помощью собственного скрипта изменить сгенерённую таблицу? В частности надо добавить строчек и заполнить их данными. Т.е. необходимо выполнить два действия: 1. получить доступ к "живому" html 2. переписать его Я в javascript почти ноль( Буду крайне признателен за любые советы по решению такой задачи) |
по onload можно сделать все что угодно с вашей таблицей, как добавить\удалить ячейки так и нарисовать слешами обнаженную грудь:)
|
А каким образом получить доступ к живому html? Вроде как innertext выводит только исходный скрипт, а не html, который должен получиться после обработки...
|
Кажется, что-то получается... Но появился вопрос. У меня в объекте с ID paral в html прописан текст "hello". Скрипт его меняет на "LOL", а после того, как страница загружена, должен изменить на "ppp". Alertы показывают, что код исправно меняется, но после загрузки продолжает отображаться как LOL. Что за лол?)
Скрипт сейчас выглядит так: <script type="text/javascript"> var theElement = document.getElementById("paral"); var allhtml = document.getElementsByTagName("html"); var allhtmltml = allhtml[0].innerHTML; var i=0; theElement.innerHTML = "LOL" window.onload = function(){ allhtmltml = allhtml[0].innerHTML; i=0 i=allhtmltml.indexOf("LOL",1); alert(allhtmltml); allhtmltml=allhtmltml.substring(0,i)+"ppp"+allhtml tml.substring(i+3,allhtmltml.length); alert(allhtmltml); } } </script> Т.е. изменённый код не вступает в силу... Что я делаю не так? Неужели нельзя менять html в общем порядке (парсить нужное и менять) и можно менять только обращаясь к отдельным объектам? Спасибо. |
для начала)
Цитата:
Цитата:
вам надо править таблицу? ну так и правьте таблицу Цитата:
var table = document.getElementsByTagName("table"); далее получаем набор сторк и столбцов, ищем/правим/добавляем то, что нужно. как добавить что-либо гуглите appendChild |
по поводу
var allhtml = document.getElementsByTagName("html"); солидарен с предыдущим оратором :) можно воспользоваться appendChild или можно все тем же innerHTML например находим нужный тег table и перезаписываем его:) var allhtml = document.getElementsByTagName("table"); allhtml[0].innerHTML += "<tr><td>trololo</td></tr>" короче сказать вариантов море:) читайте, изучайте, интересуйтесь :) |
Часовой пояс GMT +3, время: 16:12. |