Доброго времени суток, дорогие форумчане!Сейчас или клаву, или лоб расшибу! Читать книги просьба не предлагать :)
Ситуация следующая. Имеется в главном окне формочка с texarea и button.
На нажатие кнопки установлена JavaScript-функция, которая открывает в новом окошке html-ку с табличкой.Так вот, как мне достучаться до ячейки в таблце, расположенной в дочернем окне и передать туда данные?
ЗЫ. данные беру без проблем.
ЗЗЫ. если ниче не поможет, пойду в магазин за бубном и прочими шаманскими причандалами :)
>Так вот, как мне достучаться до ячейки в таблце, расположенной в дочернем
>окне и передать туда данные?Или я что-то не понимаю, или всё довольно-таки просто:
childWindow.document.getElementById("myTD").innerHTML = "текст";
По крайней мере я подобные конструкции использовал много раз. Проблемы возникают обычно из-за того, что childWindow закрыто, или его document не успел загрузится. Например, когда в одной и той же функции открывается окно и сразу же идет обращение к его внутренностям. А они еще не загрузились.
>>Так вот, как мне достучаться до ячейки в таблце, расположенной в дочернем
>>окне и передать туда данные?
>
>Или я что-то не понимаю, или всё довольно-таки просто:
>
>childWindow.document.getElementById("myTD").innerHTML = "текст";
>
>По крайней мере я подобные конструкции использовал много раз. Проблемы возникают обычно
>из-за того, что childWindow закрыто, или его document не успел загрузится.
>Например, когда в одной и той же функции открывается окно и
>сразу же идет обращение к его внутренностям. А они еще не
>загрузились.Здесь все понятно. Из-за этих причин вчера у меня ничего и не получалось.
Обошел (ниже на форуме был похожий пример). Данные перегоняются в переменную дочернего окна.
Если их выгнать alert'ом - все буковки на месте :)
Но, при использовании document.getElementById("myTD").innerHTML = "текст" съедаются все переводы кареток. Т.е. текст помещается без абзацев, в один сплошной большой абзац.
Вот какая засада.
>Но, при использовании document.getElementById("myTD").innerHTML = "текст" съедаются все переводы кареток. Т.е. текст
>помещается без абзацев, в один сплошной большой абзац.Так оно и будет, конечно же! Ведь это inner_H_T_M_L_! Тот самый "текст" должен быть в формате HTML. То есть все переводы строк должны быть тегами <br>.
Напрямую передавать в innerHTML текст, введенный юзером, небезопасно - он может вставить какой-нибудь злобный тег или "<!--" - будет весело, попробуйте :) Пользовательский ввод всегда нужно проверять и никогда ему не доверять.