没有定义的?从模态框帖子向iframe提交iframe

时间:2011-01-04 19:03:14

标签: javascript jquery html

我有

<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>

(还有其他的东西,但我宁愿不发布它。

然而,当我按提交时,我得到了

window.frames.correctdata未定义 [中断此错误] window.frames.correctdata.document.form.correct.submit();

2 个答案:

答案 0 :(得分:0)

加载iframe时,如果内容文档来自同一来源,您应该能够访问其中的内容。您可以通过限制jQuery上下文来实现:

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

有关实例,请参阅http://jsfiddle.net/jsumners/hSEmH/

答案 1 :(得分: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;

});