Uniapp 업로드 파일 방법: H5 페이지 삽입, [web-view] 태그 사용, 코드는 [
< /웹 보기>].
이 튜토리얼의 운영 환경: windows7 시스템, uni-app2.5.1 버전, Dell G3 컴퓨터.
추천(무료): uni-app 개발 튜토리얼
uniapp에 파일 업로드 방법:
H5 페이지를 삽입하려면 웹뷰
를 사용해야 합니다. > 태그는 다음과 같습니다: web-view
标签,如下:
<web-view src="/hybrid/html/index.html" @message="handleMessage"></web-view>
注意:
h5页面必须在项目目录:/hybrid/html/
下面,因为这样uni-app
才不会进行编译
@message
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <meta http-equiv="X-UA-Compatible" content="ie=edge"> <title>上传文件</title> <style> *{ margin: 0; padding: 0; } .head-btn{ text-align: center; margin-top: 50px; } .file { position: relative; display: inline-block; background: #D0EEFF; border: 1px solid #99D3F5; border-radius: 10px; padding: 24px 50px; overflow: hidden; color: #1E88C7; text-decoration: none; text-indent: 0; line-height: 20px; font-size: 40px; } .file input { position: absolute; font-size: 200px; right: 0; top: 0; opacity: 0; } .file:hover { background: #AADFFD; border-color: #78C3F3; color: #004974; text-decoration: none; } .determine{ color: #FFFFFF; background-color: #007AFF; display: inline-block; font-size: 20px; border-radius: 5px; padding: 8px 24px; } .showFileName{ display: inline-block; height: 30px; min-width: 300px; } .btn { display: block; margin: 20px auto; padding: 5px; background-color: #007aff; border: 0; color: #ffffff; height: 40px; width: 200px; border-radius: 5px; } .btn1 { display: block; margin: 20px auto; padding: 5px; background-color: #007aff; border: 0; color: #ffffff; height: 40px; width: 200px; border-radius: 5px; } .btn-red { background-color: #dd524d; } .btn-yellow { background-color: #f0ad4e; } .desc { padding: 10px; color: #999999; } </style> </head> <body> <div> <form action="" method="post"> <a href="javascript:;">选择文件 <input type="file" name="uploadFile" id="uploadFile" > </a> </form> <p></p> </div> <div> <button type="button" data-action="redirectTo">确定</button> <button type="button" data-action="navigateBack">取消上传</button> </div> <script src="./js/jQuery1_10_2.js"></script> <script type="text/javascript" src="https://js.cdn.aliyun.dcloud.net.cn/dev/uni-app/uni.webview.1.5.2.js"></script> <script> $(".file").on("change", "input[type='file']", function() { let filePath = $(this).val(); // console.log(filePath); localStorage.setItem("fileAddress", filePath); let lastname = localStorage.getItem("fileAddress"); if (lastname != "") { $(".showFileName").html(lastname); } else { $(".showFileName").html(""); } }); $('.btn').click(function(evt) { var formdata = new FormData(); // 创建一个form类型的数据 formdata.append("files",$("#uploadFile")[0].files[0]); // 获取上传文件的数据 formdata.append("operate","UpLoadFile"); // 获取上传文件的数据 formdata.append("name","name"); // 获取上传文件的数据 $.ajax({ url: 'http://47.97.163.146:8080/Controler.ashx', type: "POST", processData: false, contentType: false, data:formdata, success: function(data) { // debugger console.log("这是请求成功的"); }, error: function(err) { console.log("这是请求失败的"); } }); var target = evt.target; if (target.tagName === 'BUTTON') { var action = target.getAttribute('data-action'); if (action == 'redirectTo') { uni.redirectTo({ /* url: '/pages/component/index', */ url: '/pages/index/index', success:function (d) { console.log("跳转成功"); }, fail:function(e){ console.log(e); }, }); } } }); //取消文件上传 $('.btn1').click(function(evt) { var target = evt.target; if (target.tagName === 'BUTTON') { var action = target.getAttribute('data-action'); if (action == 'navigateBack') { uni.navigateBack({ delta: 1 }); } } }); </script> </body> </html>
/hybrid/html/ 아래에 있어야 합니다. code>, <code>uni-app
는 컴파일되지 않기 때문입니다@message
이벤트는 h5 페이지가 애플리케이션에 데이터를 보내는 콜백rrreee🎜 🎜관련 무료 학습 권장 사항: 🎜프로그래밍 동영상🎜🎜🎜
위 내용은 uniapp에서 파일을 업로드하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!