javascript和iframe有问题

时间:2013-02-25 20:26:50

标签: javascript html iframe

我正在使用js和html,所有客户端。我有以下情况......我有一个html表单(在index.html中),包含一些输入和一个提交按钮。除此之外,表单包含一个iframe标记,该标记引用包含其他html表单的另一个页面(other.html)。事情是在另一个名为other.html的页面中,我在表单标记内部有一个文本输入(name =“info”),可以保存一些信息。

现在我要做的是以index.html的形式提交此信息的输入值。

示例index.html:

<html>
    <body>
        <form method="post" action="aphpfile.php">
            <input type="text" name="a"/>
            <input type="text" name="b"/>
            <input type="text" name="c"/>
            <iframe id="other1" width="408" height="200" frameborder="0" 
                scrolling="no" marginheight="0" 
                marginwidth="0" src="other.html"></iframe>
            <input type="submit" value="submit"/>
        </form>
    </body>
</html>

示例other.html:

<html>
    <script type="text/javascript">
        function setInfo() {
            document.getElementById("info").value = "this is the info";
        }
    </script>
    <body>
        <form>
            <input type="text" id="info" name="info"/>
        </form>
        <input type="button" onclick="setInfo();" value="setInfo"/>
    </body>
</html>

所以从aphpfile.php我想这样做:

$a = $_POST['a'];
$b = $_POST['b'];
$c = $_POST['c'];
$info = $_POST['info'];
echo $a . "," . $b . "," . $c . "," . $info;

感谢您的帮助。

1 个答案:

答案 0 :(得分:0)

为许多iframe解决了问题。以下代码是在提交aphpfile.php的表单时调用的函数内编写的。我希望有人觉得这很有用:)

var iframe = document.getElementById('other1');
        var innerDoc;
        var data;
        var name;
        var htmlData="";
        var i=1;
        while(iframe != null)
        {
            innerDoc = iframe.contentDocument || iframe.contentWindow.document;
            data=innerDoc.getElementById("info").value;
            name="info"+i;
            htmlData+="<input type='hidden' name='"+name+"' value='"+data+"'/>";
            i++;
            iframe = document.getElementById('other'+i);
        }
        document.getElementById("hiddens").innerHTML=htmlData;

而且还有一个

<div id="hiddens"></div>

在index.html

中的表单内
相关问题