基于vue+ bootstrap实现图片上传图片展示功能
程序员文章站
2022-03-20 15:57:39
效果图如下所示:
html
.....
.......
<-- key=idpicurl -->
效果图如下所示:
html
..... ....... <-- key=idpicurl --> <div class="col-sm-7" > <img :src="queryfirminfo[key]" alt="" style="max-height:200px;max-width:250px" class="myimage" :name="key" /> </div> <form id="fileform" enctype="multipart/form-data" class="form-horizontal " > <div class="col-sm-5 " style="margin:0 25%;padding: 0"> <input class="form-control" type="file" name="file" @change="handlefilechange" ref="inputer" > </div> </form>
vue
data: { queryfirminfo:{ idpicurl:"" ...... } }
//选择改变图片 handlefilechange(e){ var vm=this; let file = e.target.files[0]; let supportedtypes = ['image/jpg', 'image/jpeg', 'image/png']; if (file && supportedtypes.indexof(file.type) >= 0) { basefileajax(new formdata($( "#fileform" )[0]),function(result){ if(result.ret==0){ //提交成功后 //将图片上传到后台,得到后台图片的路径。 vm.queryfirminfo["idpicurl"]=result.url; $("#dform").formvalidation('revalidatefield', "idpicurl"); }else{ layer.msg("修改图片失败!") } }) } else { layer.alert('文件格式只支持:jpg、jpeg 和 png'); } },
/** * @method :form表单提交文件 * @param url :请求路径 * @param data :请求数据(new formdata($( "#imgform" )[0])) * @param method:回调方法 */ function basefileajax(data,method){ $.ajax({ url: '/dspark-firm/firmmember/uploadfile.yt' , type: 'post', data: data, async: false, cache: false, contenttype: false, processdata: false, success: method, error: function (returndata) { alert("connection error"); } }); }
以上所述是小编给大家介绍的基于vue+ bootstrap实现图片上传图片展示功能,希望对大家有所帮助
下一篇: Vue.js tab实现选项卡切换