Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 03.11.2009, 03:10
samurau
 
Сообщений: n/a

помощь новичку - задача вывода содержимого нескольких страниц в одну новую
Приветствую коллеги!
Я новичек. У мне стоит следующая задача.
Есть страница например url/page1.html.
На ней набор чего-то и там и таблица с именами людей в виде ссылок. каждый человек уникально идентифицируется номером. При нажатии на ссылку каждого человека открывается окно в котором описаны все данные о человеке. Окно открывается как ссылка вида url/page/users/xxxxxxxxxxx, где xxxxxxxxx - уникальный 7-значный код человека.
Стоит необходимость найти все эти ссылки на людей и собрать все их персональные данные на одну страницу.
Я попробовал согласно прочитанному тут.
Но никак не пойму и никак не найду как обратиться к полученному документу xmlhttp.responseText?
Все попытки xmlhttp.responseText.body.getElemtsByTagName('tabl e') или
xmlhttp.body.getElemtsByTagName('table') приводят лишь к ошибке.

Куда идти-то?

и это только треть вопроса. Вот еще. Допустим я как-то смог использовать вызванные объект с содержимым станицы. А как я в нем найду нужную таблицу если заранее не известен ни ее ID ни имена людей в ячейках таблицы?

И еще. Как дальше действовать - уже после нахождения таблицы? Как собрать
____
function getXmlHttp(){
var xmlhttp;
try {
xmlhttp = new ActiveXObject("Msxml2.XMLHTTP");
} catch (e) {
try {
xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
} catch (E) {
xmlhttp = false;
}
}
if (!xmlhttp && typeof XMLHttpRequest!='undefined') {
xmlhttp = new XMLHttpRequest();
}
return xmlhttp;
}

function getpage(url,cb) {
var url='utl/page.html';
var xmlhttp = getXmlHttp();
xmlhttp.open("GET", url+'?r='+Math.random(), true);
xmlhttp.send(null);
xmlhttp.onreadystatechange = function()
{
if (xmlhttp.readyState == 4) {
if(xmlhttp.status == 200) {
xmlhttp.getAllResponseHeaders());
xmlhttp.StatusText);
xmlhttp.responseText);
}
else {
}
}

else {
// alert('readystate не равен 4 - надо подождать');
}
}

var body = xmlhttp.ResponseText.body;
var eee = body.getElementsByTagName('table');
alert(eee.length);

} // конец функции
Ответить с цитированием
  #2 (permalink)  
Старый 03.11.2009, 10:26
Аспирант
Отправить личное сообщение для IIIEPJIOK Посмотреть профиль Найти все сообщения от IIIEPJIOK
 
Регистрация: 23.12.2008
Сообщений: 75

1-ая треть вопроса:
responseText - в переводе текст ответа, подумай, текст
Очень полезная ссылка: http://xmlhttprequest.ru
Вторая треть: если неизвестно что искать, найти крайне сложно
Посмотри внимательно на код этих страниц, вполне вероятно, что отличительный знак найдется.
Третья треть: inneHTML, apendChild, insertBefore, свойство таблицы rows, и свойство строки cells - этого должно хватить, чтобы из любых таблиц построить новую.
Ответить с цитированием
  #3 (permalink)  
Старый 03.11.2009, 19:07
samurau
 
Сообщений: n/a

Шерлоку:
1.Прежде чем писать сюда прочитал все, что нашел на http://xmlhttprequest.ru понятного мне. Прочитал раз 15-ть. Не помогло.
Хорошо пусть так - текст возвращается в xmlhttp.responseText. Но я пробовал и просто xmlhttp.getElemetsByTagName и прочие. Ошика на странице и никакой реакции.

2. В принципе искать надо некую таблицу - ее мне удалось в помощью document.write полностью вместе со всем содержимым вызванной таблицы всунуть в документ из которого все вышеукащанные функции запускались. Я ее вижу и могу посмотреть и тут опубликовать.
Я правльно понимаю, как только я document.write сделал, то все, что было ДО это в документе будет заменено на xmlhttp.ResponseText? Как тогда дальше быть?

3. Спасиюо немного - очень немного проясняется по 3-му вопросу - хоть и прочитал несколько раз раздел про работу с DOM в динамическом режиме - мало что понял.

Пока вопрос1 не решен ... Что делать?
Ответить с цитированием
Ответ



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

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