laravel5.5结合bootstrap上传插件fileinput 上传图片
引入相关js
1 2 | <script src= "{{ asset('bootstrap-fileinput/js/fileinput.js') }}" ></script> <script src= "{{ asset('bootstrap-fileinput/js/fileinput.min.js') }}" ></script> |
html代码
1 2 3 4 5 6 7 8 9 10 11 12 | <div class = "form-group {{ $errors->has('idcard_front') ? ' has-error' : '' }}" > <label class = "control-label col-sm-2" for = "inputSuccess3" >身份证正面</label> <div class = "col-sm-6" > <input id= "input-b4b" name= "idcard_front" type= "file" value= "" > <input id= "idcard_front" name= "id_card_front" type= "hidden" value= "" > </div> @ if ($errors->has( 'idcard_front' )) <span class = "help-block" > <strong>{{ $errors->first( 'idcard_front' , '请上传您的身份证正面' ) }}</strong> </span> @endif </div> |
js代码
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 | $( "#input-b4b" ).fileinput({ language: 'zh' , //设置语言 uploadUrl: "url" , //上传的地址 allowedFileExtensions: [ 'jpg' , 'jpeg' , 'gif' , 'png' ], //接收的文件后缀 browseLabel: '选择文件' , removeLabel: '删除文件' , removeTitle: '删除选中文件' , cancelLabel: '取消' , cancelTitle: '取消上传' , uploadLabel: '上传' , uploadTitle: '上传选中文件' , dropZoneTitle: "请通过拖拽图片文件放到这里" , dropZoneClickTitle: "或者点击此区域添加图片" , uploadAsync: true , //默认异步上传 showUpload: true , //是否显示上传按钮 showRemove: true , //显示移除按钮 showPreview: true , //是否显示预览 showCaption: false , //是否显示标题 browseClass: "btn btn-primary" , //按钮样式 dropZoneEnabled: true , //是否显示拖拽区域 //minImageWidth: 50, //图片的最小宽度 //minImageHeight: 50,//图片的最小高度 //maxImageWidth: 1000,//图片的最大宽度 //maxImageHeight: 1000,//图片的最大高度 maxFileSize: 2000, //单位为kb,如果为0表示不限制文件大小 //minFileCount: 0, maxFileCount: 10, //表示允许同时上传的最大文件个数 enctype: 'multipart/form-data' , validateInitialCount: true , previewFileIcon: "<i class='glyphicon glyphicon-king'></i>" , msgFilesTooMany: "选择上传的文件数量({n}) 超过允许的最大数值{m}!" }).on( "filebatchselected" , function (event, files) { $( this ).fileinput( "upload" ); }) .on( "fileuploaded" , function (event, data) { if (data.response) { var picdir = data.response; $( "#idcard_front" ).val(picdir); } }); |
说明一下:引入汉化包没有生效,mmp!!! 自己汉化吧!
后台处理代码:
public function uploadimg(Request $request) { if($request->isMethod('post')) { $file = $request->file('idcard_front'); if($file){ $extension = $file -> guessExtension(); $newName = str_random(18).".".$extension; $file -> move(base_path().'/public/storage/uploads',$newName); $idCardFrontImg = '/upload/file/'.$newName; return json_encode($idCardFrontImg); }else{ $idCardFrontImg = ''; return json_encode($idCardFrontImg); } } }
暂时做个备份,仅供参考!多多交流!
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 地球OL攻略 —— 某应届生求职总结
· 周边上新:园子的第一款马克杯温暖上架
· Open-Sora 2.0 重磅开源!
· 提示词工程——AI应用必不可少的技术