Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737
Форумы портала PHP.SU :: не слушается элемент c id внутри div

 PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи


 Страниц (1): [1]   

> Без описания
Romeo4755
Отправлено: 19 Декабря, 2015 - 22:49:22
Post Id


Новичок


Покинул форум
Сообщений всего: 16
Дата рег-ции: Окт. 2015  


Помог: 0 раз(а)




Здравствуйте.
Таблица в столбцах включает такие секции (номера, понятно, разные - тут 3)
CODE (html):
скопировать код в буфер обмена
  1. <!-- new section -->   
  2. <div id="inputparagraph3">
  3.         <br>
  4.         <p id="linetotranslate3" class="russianline"> I am the line to translate</p>
  5.         <p>
  6.         <textarea id="inputline3" class="inputwin" oninput = "InputDone(3);" onKeyDown= "InputDone(3);" onMouseDown= "InputDone(3);"></textarea>
  7.         </p>
  8. </div>


окошки ввода опознаны так:
CODE (javascript):
скопировать код в буфер обмена
  1. var massivstrok = new Array (); for (var i = 0; i < kolwords ; i++) { massivstrok [i]=document.getElementById ("inputline"+i);}

Все хорошо.
Но как только я опознаю также id у внешнего div, окошки ввода перестают реагировать на команды из функций JS - не меняют текст, цвет и пр. Хотя в памяти хранят указанный value текст (как показывает alert). Внешне никак себя не проявляют. И при этом ошибки тоже не происходит - типа элементы массива существуют и валидны.
Вот при таком варианте этот кошмар начинается (первую строчку уберешь в комментарии - и все работает)
CODE (javascript):
скопировать код в буфер обмена
  1. var massivparags = new Array (); for (var i = 0; i < kolwords ; i++) {massivparags [i]=document.getElementById ("inputparagraph"+i);}
  2. var massivstrok = new Array (); for (var i = 0; i < kolwords ; i++) { massivstrok [i]=document.getElementById ("inputline"+i);}


Так пробовала, нихель:
CODE (javascript):
скопировать код в буфер обмена
  1. massivparags [i].getElementById ("inputline"+i);

Объясните мне, пожалуйста, что со мной происходит.
Так.. разобралась, что текстареа - не дети дива. Текстареа находится в третьем ребенке дива:
CODE (javascript):
скопировать код в буфер обмена
  1. document.getElementById ("inputparagraph"+i).children[2]

у которого innerHTML
CODE (html):
скопировать код в буфер обмена
  1.         <textarea id="inputline3" class="inputwin" oninput = "InputDone(3);" onKeyDown= "InputDone(3);" onMouseDown= "InputDone(3);"></textarea>


И как его теперь ловить по id? Того, который "inputline3"?
Так работает:
CODE (javascript):
скопировать код в буфер обмена
  1. alert (document.getElementById ("inputparagraph"+i).children[2].getElementsByTagName("textarea")[0].id);

Сообщает, что он inputline3.
Так не работает:
CODE (javascript):
скопировать код в буфер обмена
  1. var massivstrok = new Array (); for (var i = 0; i < kolwords ; i++) {
  2. massivstrok [i]= document.getElementById ("inputparagraph"+i).children[2].getElementsByTagName("textarea")[0]


Все, сдалась. Спасибо за помощь.
Последним извращением было
CODE (javascript):
скопировать код в буфер обмена
  1. var massivstrok = new Array (); for (var i = 0; i < kolinputs ; i++) { var timID = document.getElementsByTagName("textarea")[i].id;  timID=timID.replace("inputline",'');  massivstrok [parseInt(timID)]= document.getElementsByTagName("textarea")[i];}

(потому что нумерация окошек должна соответствовать ручной разметке - горизонтальной, а они в HTML нумеруются столбиками в таблице).

Поделила каждый абзац на спаны.

(Отредактировано автором: 20 Декабря, 2015 - 20:03:24)

 
 Top
Страниц (1): [1]
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« JavaScript & VBScript »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 



Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB