Как вывести всех детей?
Сабж, как это сократить?
for (var i=0;i!=$(this).children().length;i++) { if (i==1) document.write($(this).children().next().attr('id')); if (i==2) document.write($(this).children().next().next().attr('id')); if (i==3) document.write($(this).children().next().next().next().attr('id')); if (i==4) document.write($(this).children().next().next().next().next().attr('id')); if (i==5) document.write($(this).children().next().next().next().next().next().html()); if (i==6) document.write($(this).children().next().next().next().next().next().next().html()); if (i==7) document.write($(this).children().next().next().next().next().next().next().next().html()); if (i==8) document.write($(this).children().next().next().next().next().next().next().next().next().html()); if (i==9) document.write($(this).children().next().next().next().next().next().next().next().next().next().html()); if (i==10) document.write($(this).children().next().next().next().next().next().next().next().next().next().next().html()); } |
я фреймворки не очень хорошо знаю, но возможно сработает вот так
if (i>0) if (i<5) { document.write($(this).children()[i].attr('id')); }else if (i<11){ document.write($(this).children()[i].html()); } } |
Кошмар какой-то) тут можно сделать простую рекурсию и код сократить до 1-й строчки) и фреймворки для такой задачи тож моно спокойно не юзать)
|
document.write($(this).children()[i].attr('id')); не работает |
for ( var child = this.firstChild, k = 0; child; ) { if ( child.nodeType == 1 ) { if ( k > 0 && k < 5 ) { document.write( child.id ); } else if ( k < 11 ) { document.write( child.innerHTML ); } k++; } child = child.nextSibling; } |
NoResponse, вместо
$(this).children()[i].attr('id') в jQuery надо писать $(this).children().eq(i).attr('id') |
спасибо, работает :)
|
nikita.mmf
вот оно как спасибо, буду знать |
Часовой пояс GMT +3, время: 09:15. |