Создание и заполнение INPUT по клику из другого фрейма
Добрый день!
Помогите пожалуйста в решении проблемы. Знание JS на уровне копипаста (но за счет знания php понимаю принцип). Имеются два фрейма (FRAMESET, не IFRAME): левый (далее LF) и правый (далее RF). В LF форма, в RF каталог товаров. При клике на названии товара в RF должно происходить следующее: в DIV'e, расположенном в LF, создается INPUT с названием данного элемента. Впринципе, некое подобие корзины. Собрал следующий код для фрейма RF: <script type="text/javascript"> var poscount = <?echo rand(1,999)?>000; function setPos(obj) { parent.document.frames['manager'].document.getElementById('pos'+poscount).value=obj.id; parent.document.frames['manager'].document.getElementById('divpos'+poscount).innerHTML=obj.title; } function add_div() { var dcont = parent.document.frames['manager'].document.getElementById('form_pos'); var div = parent.document.frames['manager'].document.createElement('div'); div.setAttribute('class','divAddPos '); div.setAttribute('id','divpos'+poscount); dcont.appendChild(div); } function add_input() { var Form = parent.document.frames['manager'].document.getElementById('form_pos') var Inner = parent.document.frames['manager'].document.createElement('input'); Inner.type = 'hidden'; Inner.id = 'pos' + poscount; Inner.name = 'PROPERTY[85]['+poscount +']'; Form.appendChild(Inner); } </script> и для LF: <script type="text/javascript"> function add() { var Form = document.getElementById('form_pos') var Inner = document.createElement('input'); Inner.type = 'text'; Inner.value = ''; Inner.name = 'PROPERTY[85]['+ poscount +']'; Inner.size = '25'; Inner.id = 'pos'+poscount; Form.appendChild(Inner); } </script> В коде имеется дополнительный хлам, который генерит случайные ID и создает скрытые input'ы которые пишутся в БД при сохранении формы. Беда заключается в том, что данный код работает в IE с вероятность 50% (в зависимости от версии) и не работает в других браузерах. Думал что jquery поможет, но не смог найти информации по работе с фреймами (как говорится, правильный запрос можешь сформировать когда знаешь на него ответ). Очень надеюсь на любую помощь! Спасибо! |
belovdo,
parent. и div.setAttribute('class','divAddPos '); div.setAttribute('id','divpos'+poscount); setAttribute не все ie поймут. можно div.className ='divAddPos'; div.id = 'divpos'+poscount; |
Часовой пояс GMT +3, время: 18:16. |