【发布时间】:2011-12-10 06:55:04
【问题描述】:
使用 iframe,我网站的用户如何在不重新加载整个页面的情况下上传文件?我发现了很多 jQuery 插件,但它们对于这项任务来说太大了。用户只需上传一个文件,无需填写其他输入。
【问题讨论】:
使用 iframe,我网站的用户如何在不重新加载整个页面的情况下上传文件?我发现了很多 jQuery 插件,但它们对于这项任务来说太大了。用户只需上传一个文件,无需填写其他输入。
【问题讨论】:
iframe 是在您的页面中加载的整个 html 页面。您需要做的就是创建一个带有表单的 html 页面,该表单允许用户选择一个文件,然后有一个上传按钮(一个表示上传的提交按钮)或使用带有“onchange”事件的 javascript 来自动上传文件.只需将其全部加载到 iframe 中即可。
附带说明,如果您需要 iframe 的父窗口可以使用文件名,您还必须让 javascript 在文件上传时将文件名传递给父窗口。
这是我使用过的一些代码的精简版。将其放置在普通的 html 页面中,然后将该页面加载到 iframe 中。
形式:
<form action="thispagename.html" method="post" enctype="multipart/form-data">
<input type="file" id="userfile" name="userfile" value="" onchange="SendToParent(this, 'fieldinparent')" /><br/>
<button type="submit" id="uploadfile" name="uploadfile">Upload File</button>
</form>
Javascript:
function SendToParent(origin, destination)
{
parent.document.getElementById(destination).value = origin.value;
}
基本上,如果您需要它自动提交,您可以向“onchange”事件添加一个附加函数来处理自动提交。
【讨论】:
您可以使用 ajax。 Jquery 和其他库和插件使这变得非常容易
【讨论】: