0

我有这个 HTML:

<script type="text/javascript">
                        function uploadDone(response) {
                                alert(response);
                            }
                            function init() {
                                        document.getElementById('file_upload_form').onsubmit=function() {
                                            document.getElementById('file_upload_form').target = 'upload_target'; //'upload_target' is the name of the iframe
                                            document.getElementById("upload_target").onload = uploadDone(response);
                                        }
                                    }
                        </script>
                        <form method="get" id="file_upload_form" enctype="multipart/form-data" action="../includes/parsecsv.ajax.php" target="upload_target">
                            <label class="uploadClick">
                                <button class="normal">Click to Upload Sign Ups CSV</button>
                                <input type="file" id="uploadSignups file" name="file">
                            </label>
                            <span class="uploadDrag"><span>or</span>Drag Your Sign Ups CSV Here</span>
                            <button type="submit" name="action">hello</button>
                            <iframe id="upload_target" name="upload_target" src="" style="width:0px; height:0px; border:none;"></iframe>
                        </form>

应该是,当您单击提交按钮时,通过<iframe>. 我似乎已经能够让它进行上传,但是上传完成后它似乎没有运行uploadDone()?有什么想法有什么问题吗?

4

3 回答 3

0

在这里,您需要创建一个具有响应的 JSP 文件,并在 JSP 中编写一些脚本来访问uploadDone已加载到文档中的方法。

JSP 中的脚本可以是这样的:

 parent.document.uploadDone(response);
于 2011-11-26T07:15:57.927 回答
0

我想您只需向 iFrame 的窗口元素添加一个事件:

document.getElementById("upload_target").contentWindow.onload = function(response) { uploadDone(response) };

另外,请注意我将uploadDone内部包装为一个函数;否则,它只会调用它并将事件设置为它返回的任何内容。

于 2011-11-26T05:28:02.720 回答
0

使用 IFrame 的 parent 属性,如何从 javascript 访问父 Iframe

于 2011-11-26T05:31:11.177 回答