在iframe中更改输入值,父输入更改

时间:2013-04-10 11:07:56

标签: jquery iframe onchange

我的网站中有一个包含iframe的页面,iframe内部有许多输入框。我想要做的是当有人在iframe输入框中输入一个值时,该值将被写入父页面的输入框中。

我在这里找到了一些其他的答案,但我无法让它们满足我的需要,到目前为止,我有类似的东西

HTML - 代表父

<form method="post" id="presentation-form" action=”action.php”>
  <input type="text" id="edit-title" name="title">
    <iframe id="upload_frame" src="upload.html" ></iframe>
  <input type="submit" id="edit-submit" name="op" value="Save">
</form>

HTML - 适用于儿童

<form name="formUpload" id="formUpload" etc..> 
  <input id=”mytitle” type="text" size="50" name="title" value=""> 
  <input type="submit" name="submit" value="Upload File">
</form>

我想要的是当我在子表单中更改'mytitle'的值时,它会在父表单中显示'edit-title'

到目前为止,我的Jquery是

$('#upload_frame').contents().find("#formUpload").delegate('input', 'change', function(e){ 
  //code goes here
});

我遇到的问题是,即使我尝试提醒,或者在该脚本中记录某些内容,也没有发生任何事情,我没有收到任何javascript错误但是当我做任何事情时都没有收到任何警报

(在有人问之前,这个子页面是我同一个域内的一个页面)

非常感谢任何帮助

1 个答案:

答案 0 :(得分:9)

对于未来的人来说,这是我最终使用的解决方案,它似乎工作正常

$('iframe').load(function(){
     $('iframe').contents().find('input#mytitle').bind('change',function(e) {
        title_name = $(this).val();
        $('input#edit-title').val(title_name);
     });
});