2011-01-04 4 views
0

У меня естьНе определено? Отправить IFRAME из модальной коробки пост в IFrame

<iframe src="correctdata.php" frameborder="0" width="100%" height="330" id="correctdata"></iframe> 
<div class="floatright"><a class="button bigger" onclick="window.frames['correctdata'].document.form['correct'].submit();">Submit</a></div> 

И correctdata.php содержит форму

<form method="post" action="correctdata.php" name="correct" id="correct"></form> 

(Eсть другие вещи, но я бы предпочел не оставлять его.

Но когда я нажимаю отправить я получаю

window.frames.correctdata неопределен [Перерыв на этой ошибке] window.fr ames.correctdata.document.form.correct.submit();

ответ

0

попробовать свои с "jQuery(...)contents()"

Html:

<iframe src="correctdata.php" frameborder="0" width="100%" height="330" id="correctdata"></iframe> 
<div class="floatright"><a class="button bigger" id="submit-iframe">Submit</a></div> 

JS:

$('#submit-iframe').bind('click', function(ev) { 

    ev.stopPropagation(); 

    var correctForm = $("#correctdata").contents().find("#correct"); 

    if (correctForm.length == 0) 
     alert('error'); 
    else 
     correctForm[0].submit(); 

    return false; 

}); 
0

При загрузке iframe при условии, что документ содержимого имеет то же самое происхождение, вы должны иметь доступ к содержимому внутри него. Вы можете сделать это, ограничивая контекст JQuery следующим образом:

$('#idInTheIframe', $('iframe')[0].contentDocument); 

Для живого примера см http://jsfiddle.net/jsumners/hSEmH/.

+0

не работает = -/ – Steven

+0

Да, я облажался мой первый ответ. Я заменил его рабочим примером. –

Смежные вопросы