怎么用html上传而不

怎么用html上传而不,第1张

HTML5方式上传文件,可以通过使用FormData类模拟Form表单提交,从而实现无刷新上传文件。

假设有一个文件选择框

[html] view plain copy

<input type="file" name="pic" id="pic" accept="image/gif" />

<script src="http://apps.bdimg.com/libs/jquery/2.1.4/jquery.min.js"></script>

<form name="upload">

    <input type="file" name="pic">

</form>

<script>

    $('form[name="upload"]').submit(function(){

        //HTML5表单对象,FormData(表单DOM节点)

        var formData = new FormData(this)

        //ajax(服务器地址, 参数).done(回调)

        $.ajax('http://localhost', {

            type: 'POST',

            dataType: 'JSON',

            data: formData,

            processData: false,

            contentType: false

        }).done(function(e){

            //让服务器返回一个储存图片的路径给你,然后你再把他加入到canvas中

            //假如返回的就是一个URL字符串'http://localhost/canvas.jpg'

            //执行把图像加入到canvas中的方法

            //Orz我canvas很菜所以我没办法告诉你怎么再把图片加入到canvas中,我只能告诉你怎么加入到上下文中

            document.body.innerHTML = '<img src="' + e + '">'

        })

        return false    //阻止form表单默认提交会刷新页面

    })

</script>

分析问题:表单上传然后还要成功后在canvas中显示。

方案:采用Ajax提交图像,这样可以做到无刷新上传和无刷新在canvas中显示

Ajax为了降低代码难度和提高兼容性采用jQuery库编写好的Ajax上传。


欢迎分享,转载请注明来源:内存溢出

原文地址: https://www.outofmemory.cn/zaji/7238791.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-03
下一篇 2023-04-03

发表评论

登录后才能评论

评论列表(0条)

保存