Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 15.03.2011, 17:15
Новичок на форуме
Отправить личное сообщение для Wolfer Посмотреть профиль Найти все сообщения от Wolfer
 
Регистрация: 15.03.2011
Сообщений: 3

Изменение сгенерённого html
Добрый день)
Представляю вашему вниманию такую вот задачку:

Дано: сгенерированная прогой страница, наполненная javaскриптами, которые после отработки в браузере представляются несколькими таблицами с данными.

Можно в определённое место этой страницы с помощью той же проги добавить собственный java-скрипт.
Вручную добавить в любое место страницы java-script или изменить автоматически-сгенерированный нельзя.

Вопрос: можно ли с помощью собственного скрипта изменить сгенерённую таблицу? В частности надо добавить строчек и заполнить их данными.
Т.е. необходимо выполнить два действия:
1. получить доступ к "живому" html
2. переписать его

Я в javascript почти ноль(

Буду крайне признателен за любые советы по решению такой задачи)
Ответить с цитированием
  #2 (permalink)  
Старый 15.03.2011, 19:48
Профессор
Отправить личное сообщение для розовый слоник Посмотреть профиль Найти все сообщения от розовый слоник
 
Регистрация: 17.10.2009
Сообщений: 258

по onload можно сделать все что угодно с вашей таблицей, как добавить\удалить ячейки так и нарисовать слешами обнаженную грудь
Ответить с цитированием
  #3 (permalink)  
Старый 15.03.2011, 22:25
Новичок на форуме
Отправить личное сообщение для Wolfer Посмотреть профиль Найти все сообщения от Wolfer
 
Регистрация: 15.03.2011
Сообщений: 3

А каким образом получить доступ к живому html? Вроде как innertext выводит только исходный скрипт, а не html, который должен получиться после обработки...
Ответить с цитированием
  #4 (permalink)  
Старый 15.03.2011, 23:04
Новичок на форуме
Отправить личное сообщение для Wolfer Посмотреть профиль Найти все сообщения от Wolfer
 
Регистрация: 15.03.2011
Сообщений: 3

Кажется, что-то получается... Но появился вопрос. У меня в объекте с 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 в общем порядке (парсить нужное и менять) и можно менять только обращаясь к отдельным объектам?
Спасибо.

Последний раз редактировалось Wolfer, 15.03.2011 в 23:09.
Ответить с цитированием
  #5 (permalink)  
Старый 16.03.2011, 10:31
Аспирант
Отправить личное сообщение для lalala Посмотреть профиль Найти все сообщения от lalala
 
Регистрация: 04.03.2011
Сообщений: 87

для начала)
Сообщение от Wolfer
allhtmltml=allhtmltml.substring(0,i)+"ppp"+allhtml tml.substring(i+3,allhtmltml.length);
в остальном..
Сообщение от Wolfer
Можно в определённое место этой страницы с помощью той же проги добавить собственный java-скрипт.
Вручную добавить в любое место страницы java-script или изменить автоматически-сгенерированный нельзя.
Ну так попросите прогу пусть сама сделает, то что хотите шутка конеш..но смешно как то получается)

вам надо править таблицу? ну так и правьте таблицу
Сообщение от Wolfer
var allhtml = document.getElementsByTagName("html");
втф?? вам всю страницу что ли?

var table = document.getElementsByTagName("table");
далее получаем набор сторк и столбцов, ищем/правим/добавляем то, что нужно.

как добавить что-либо гуглите appendChild

Последний раз редактировалось lalala, 16.03.2011 в 10:35.
Ответить с цитированием
  #6 (permalink)  
Старый 16.03.2011, 11:23
Профессор
Отправить личное сообщение для розовый слоник Посмотреть профиль Найти все сообщения от розовый слоник
 
Регистрация: 17.10.2009
Сообщений: 258

по поводу
var allhtml = document.getElementsByTagName("html");

солидарен с предыдущим оратором
можно воспользоваться appendChild или можно все тем же innerHTML например находим нужный тег table и перезаписываем его
var allhtml = document.getElementsByTagName("table");
allhtml[0].innerHTML += "<tr><td>trololo</td></tr>"


короче сказать вариантов море читайте, изучайте, интересуйтесь
Ответить с цитированием
Ответ


Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Динамическре изменение цвета ячейки по нажатию на ссылку Bagira Элементы интерфейса 7 08.04.2011 16:54
Очень нужно.. Отправка HTML куски в JSON от сервера используя Ajax bivnikus jQuery 8 26.10.2010 23:54
Загрузка внешнего html файл на страницу GRean (X)HTML/CSS 3 26.04.2010 14:16
Динамические html элементы sky Элементы интерфейса 2 07.03.2010 11:58
EasySlider. Изменение дизайна ссылки когда список заканчивается Rostislav jQuery 3 16.09.2009 12:59