iframe + form + target + ie = БОРОДА!
Есть страничка (используються фрэймы)
Создаю в одном из фрэймов - iframe под средстом createElement + присваиваю ему name Так же динамически содаёться форма с таргетом на данный iframe Делая submit у формы, во всех браузерах, конечно кроме нашего любимого - всё проходит как надо, страница загружаеться в ифрэйме. Но в ie выскакивает новое окно. 3 часа не могу дать ладу |
Цитата:
|
var frame = document.createElement('frame'); frame.name = 'IN_Frame'; fmdoc.body.appendChild(frame); fmdoc это document фрэйма в который вставляеться iframe |
![]() Используйте setAttribute для name: frame.setAttribute("name", "IN_Frame"); |
Во первых прошу прощение, createElement('iframe') вместо frame конечно.
Во вторых такое поведение происходит только в режиме совместимости, ie 6 из multiple ie так же выкидывает новое окно <html> <head> </head> <body> <script> var iframe = document.createElement('iframe'); iframe.name = 'IFrame'; document.body.appendChild(iframe); iframe.name = 'IFrame'; iframe.setAttribute('name', 'IFrame'); </script> <form target="IFrame"> <input type="submit"> </form> </body> </html> Ниже приведённый код так же не работает |
Попробуйте так:
<!DOCTYPE html> <a href="http://google.ru" target="test">link</a> <script> function parse(html) { var tmp = document.createElement("div"); tmp.innerHTML = html; return tmp.firstChild; } document.body.appendChild(parse('<iframe name="test"></iframe>')); </script> |
Действительно таким методом всё работает.
Большое спасибо, очень помогли. |
Часовой пояс GMT +3, время: 13:35. |