Неизвестномерный массив
Я накатал кода и даже не понимаю что у меня вышло...
function pro() { var submit = []; var items = []; for (j=0; j<document.getElementsByClassName("chosen_item").length; j+=1) {items[j] = document.getElementsByClassName("chosen_item")[j].getAttribute('alt')} for (i=0; i<document.getElementsByClassName('.apeend_items>div').length; i+=1) { submit[i]= [document.getElementsByClassName("item_block")[i].getAttribute('id'), document.getElementsByClassName("item_block_name")[i].value, document.getElementsByClassName("item_block_comm")[i].value, items]; } alert(submit[0][0]); } document.f1.finnish.onclick=pro; Можете объяснить почему браузер ругается на submit[0][0], говоря что второй ноль неверен? Какой я вообще массив создал и как он, приблизительно, выглядит? Как же я буду вам признателен за помощь... ! |
Levelleor,
может макет полностью? |
Окей, вот:
<div class="apeend_items"> <div class="items"> <div id="item_block_0" class="item_block active_item_block"><div class="del_item_block">[X]</div> <p> Название:<input class="item_block_name" name="item_block_name_0" type="text">Комментарий:<input class="item_block_comm" name="item_block_comm_0" type="text"> </p> <div alt="gameid2" class="chosen_item" style="background: rgba(0, 0, 0, 0) url(http://solomidcdn.com/images/champions_sprite_75.jpeg?v=1400720489) repeat scroll 0px -8700px / auto padding-box border-box;"><div></div></div> <div alt="gameid2" class="chosen_item" style="background: rgba(0, 0, 0, 0) url(http://solomidcdn.com/images/champions_sprite_75.jpeg?v=1400720489) repeat scroll 0px -8700px / auto padding-box border-box;"><div></div></div> <div alt="gameid2" class="chosen_item" style="background: rgba(0, 0, 0, 0) url(http://solomidcdn.com/images/champions_sprite_75.jpeg?v=1400720489) repeat scroll 0px -8700px / auto padding-box border-box;"><div></div></div> </div> </div> </div> function pro() { var submit = []; var items = []; for (j=0; j<document.getElementsByClassName("chosen_item").length; j+=1) {items[j] = document.getElementsByClassName("chosen_item")[j].getAttribute('alt')} for (i=0; i<document.getElementsByClassName('.apeend_items>div').length; i+=1) { submit[i]= [document.getElementsByClassName("item_block")[i].getAttribute('id'), document.getElementsByClassName("item_block_name")[i].value, document.getElementsByClassName("item_block_comm")[i].value, items]; } alert(submit[0][0]); } document.f1.finnish.onclick=pro; По идее тут все что нужно. Вверху блоки для считывания внизу скрипт который считывает. Или вы хотите увидеть весь документ? Не знаю что там интересного еще может быть.. |
Цитата:
document.querySelectorAll('.apeend_items>div') |
рони,
Вы даже не представляете как вы мне помогли! Боже, а я на это убил последних 4 часа, пролазил более 200 страниц на темы Jquery и JavaScript, а проблема скрылась вот в таком странном месте! Еще раз спасибо! А для понимания: почему так нельзя делать? |
Кажется понял. Наверняка ибо там не только класс. Странно только что оно не ругается на такое..
|
Levelleor,
getElementsByClassName ищет по классу а у вас селектор apeend_items - имя класса .apeend_items>div - селектор |
Часовой пояс GMT +3, время: 22:55. |