在主页面和iframe之间进行通信

时间:2011-10-13 06:34:48

标签: php javascript jquery iframe

我有一些留言板,我希望访问者能够将文件附加到他们的消息我在主页面上使用上传器脚本的iframe,而且我还使用ajax发布消息。

通过iframe上传文件后如何将其信息发送到主页面,以便将其添加到邮件正文中?

E.g。将信息放在文本字段中。我的jquery / ajax函数在提交消息之前检查该字段的值,并包括如果存在或类似的东西?但该文本字段将位于iframe中,我的函数位于主页面中:

function post() {
    if($(iframe textfield).val() != '' ) {
        // add its value to the message body 
        $.ajax();
    }
}

2 个答案:

答案 0 :(得分:1)

你应该从iframe页面调用主页的功能。请参阅以下示例:

  • 的test.html:

    <html>
    <body>
    <iframe src="testA.html"></iframe>
    <script>
    var response = function(data) {
        alert(data);
    }
    </script>
    </body>
    </html>
    
  • testA.html:

    <html>
    <body>
    <input type="button" onclick="window.top.response('hello');" value="Test" />
    </body>
    </html>
    

答案 1 :(得分:0)

如果他们在同一个域上,您可以。从父级您可以使用$('iframe').contents().find('element')。从iframe中您可以使用$(window).parent().find('element')