Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   как сделать вывод содержимое тэга на js?? (https://javascript.ru/forum/misc/26862-kak-sdelat-vyvod-soderzhimoe-tehga-na-js.html)

jsProger 25.03.2012 19:19

как сделать вывод содержимое тэга на js??
 
Доброго времени суток!
Столкнулся с проблемой, пишу скрипт по поиску последней записи любого тэга в html, предполагалось код будет выглядеть так:
function tagName (name) {
   return document.getElementsByTagName(name);
};// создаю распаковывающую функцию по поиску тэга в DOM'е

//предположим хочу найти последнюю запись в тэге "LI"
function search () {
   var li = tagName("LI");
     for(var i=0; i<li.length; i++) {
       alert(li[i].lastChild.innerHTML);
     };
//казалось бы, цикл обшаривает и считает все существующие тэги "LI", конечное условие выводит сообщением с lastChild и выводит содержимое последнего "LI" с innerHTML (value, как оказалось, выводит только значения тэгов типа "input" и т.д.) Но увы не работает, пишет undefined...

};

Чтобы могло быть?? подскажите пожалуйста народ!!

Раед 25.03.2012 19:53

function tagName (name) {
   return document.getElementsByTagName(name);
}
function search () {
   var li = tagName("LI");
     for(var i=0; i<li.length; i++) {
       var x=li[i].getElementsByTagName('*');
       alert(x[x.length-1].innerHTML);
     };

};

Не совсем понял, что вам нужно, но вроде так

Rootpassword 25.03.2012 19:56

lastChild то зачем? Уберите его и все заработает-выведет весь контент всех li по очереди. а если вам нужен последний li-так это
li[li.length-1]
без цикла

jsProger 25.03.2012 20:03

Цитата:

Сообщение от Раед (Сообщение 164888)
function tagName (name) {
   return document.getElementsByTagName(name);
}
function search () {
   var li = tagName("LI");
     for(var i=0; i<li.length; i++) {
       var x=li[i].getElementsByTagName('*');
       alert(x[x.length-1].innerHTML);
     };

};

Не совсем понял, что вам нужно, но вроде так

Да вроде логично по вашему, но загоняю кодить не работает пишет в firebag'е Index or size is negative or greater than the allowed amount" code: "1 alert(x[x.length-1].innerHTML);

мне нужно было найти в любом тэге последнюю запись ее содержимое, внутри "LI"...

Rootpassword 25.03.2012 20:09

function tagName (name) {
   return document.getElementsByTagName(name);
}
function search () {
   var li = tagName("LI");
     for(var i=0; i<li.length; i++) {
       var x=li[i].getElementsByTagName('*');
if(x.length>0){       alert(x[x.length-1].innerHTML);}
     };

};

jsProger 25.03.2012 20:10

Спасибо народ, все получилось!!! оказывается нужно было просто указывать длину как сказал RootPassword:)


Часовой пояс GMT +3, время: 07:46.