jQuery不使用插件及swf实现无刷新文件上传

前端技术 2023/09/03 JavaScript

文件上传是网站常用的功能,例如附件或图片的上传功能,解决方案也有很多,我们今天介绍一种通过jQuery无刷新的文件上传方式。

首先,我们在页面中放一个form,用来上传文件:

复制代码 代码如下:

<form id=\"myForm\" method=\"post\" action=\"/asyncFileUpload/UploadHandler.ashx\"
    enctype=\"multipart/form-data\" target=\"asyncTarget\">
    <span>文件:</span>
    <input type=\"file\" name=\"myFile\" />
</form>
<input type=\"button\" value=\"上传\" id=\"btnUpload\" />

然后,在页面中放一个iframe,在上传的时候只刷新iframe,而不是整个网页:

复制代码 代码如下:

<iframe name=\"asyncTarget\" style=\"display: none;\"></iframe>

接下来使用js为按钮添加功能:

复制代码 代码如下:

<script>
    $(function () {
        $(\"#btnUpload\").click(function () {
            $(\"#myForm\").submit();
        });
    });
</script>

在按钮单击的时候,将form提交。

这个方案可以简单的实现无刷新的文件上传。它的实现思路是:将form提交到一个iframe中,其它的处理就像处理普通的form提交一样了。

这个方案的待完善地方是如何判断上传完成,目前只有一个思路:通过js监听iframe的readystate,然后解析iframe的内容。

本文地址:https://www.stayed.cn/item/7943

转载请注明出处。

本站部分内容来源于网络,如侵犯到您的权益,请 联系我

我的博客

人生若只如初见,何事秋风悲画扇。