0

我正在使用 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;

谢谢您的帮助。

4

1 回答 1

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;

而且ofc有一个

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

在 index.html 中的表单内

于 2013-03-02T02:45:49.930 回答