上传图片js

博客主要围绕JS实现图片上传展开,先提及了HTML标签元素,后续有关于JS的表述,涉及到FileReader等技术,聚焦于信息技术领域的前端图片上传功能实现。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

先看html标签元素
<td>
<img src="${ctx}/static/assets/img/service.png"id="uploadPreview" />
<input type="hidden" name="logoUrl" id="logoUrl" />
</td>
<td>
<div class="file-container">
<a>换一个新头像</a>
<input type="file" accept="image/*" id="uploadLogo" />
</div>
<p>你可以选择jpg, gif, png格式的图片,最大1Mb</p>
</td>

js表述:

$('#uploadLogo').on('change', handleFileSelect);
// logo上传
    var handleFileSelect = function(evt) {
        var files = evt.target.files;
        for (var i = 0, f; f = files[i]; i++) {
            var fileSize = f.size;
            if (!f.type.match('image.*')) {
                continue;
            }
            var reader = new FileReader();
            reader.onload = (function(theFile) {
            return function(e) {
                var _src = event.target.result;
                // 模拟上传交互动画
                //$('.upload-tip').addClass('spin').slideDown();
                setTimeout(function() {
                    /**
                    * [_tag description]
                    * @type {number}
                    * @value {0:上传成功,1:上传失败,2:大小超出限制}
                    */
                    var _tag = Math.floor(Math.random() * 1);//Math.floor(Math.random() * 1);
                    var tipText = ["上传成功", "上传失败,请重试!", "文件大小超出网站限制,请重新上传!"];
                    switch (_tag) {
                        case 0:
                            $('.form-upload').addClass('preview');
                            $('#uploadPreview').attr('src', _src);
                            $("#logoUrl").val(_src);
                            break;
                        case 1:
                            break;
                        case 2:
                            break;
                    }
                    $('.upload-tip').removeClass('spin').slideUp();
                }, 2000);
            };
        })(f);
        reader.readAsDataURL(f);
        }
    }
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值