Home > Web Front-end > uni-app > body text

How to upload files in uniapp

coldplay.xixi
Release: 2023-01-13 00:44:17
Original
9585 people have browsed it

Uniapp upload file method: embed H5 page, use [web-view] tag, the code is [].

How to upload files in uniapp

The operating environment of this tutorial: windows7 system, uni-app2.5.1 version, Dell G3 computer.

Recommended (free): uni-app development tutorial

Uniapp upload file method:

To embed an H5 page, you need to use the web-view tag, as follows:

<web-view src="/hybrid/html/index.html" @message="handleMessage"></web-view>
Copy after login

Note:

  • ##h5 page It must be under the project directory:

    /hybrid/html/, because uni-app will not be compiled

  • @ The message event is the callback for the h5 page to send data to the application

h5 page code:


<!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=&#39;file&#39;]", 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("");
                }
            });
            $(&#39;.btn&#39;).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: &#39;http://47.97.163.146:8080/Controler.ashx&#39;,
                    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 === &#39;BUTTON&#39;) {
                    var action = target.getAttribute(&#39;data-action&#39;);
                    if (action == &#39;redirectTo&#39;) {
                        uni.redirectTo({
                            /* url: &#39;/pages/component/index&#39;, */
                            url: &#39;/pages/index/index&#39;,
                            success:function (d) {
                                console.log("跳转成功");
                            },
                            fail:function(e){
                                console.log(e);
                            },
                        });
                    }
                }
            });
            
            //取消文件上传
            $(&#39;.btn1&#39;).click(function(evt) {
                var target = evt.target;
                if (target.tagName === &#39;BUTTON&#39;) {
                    var action = target.getAttribute(&#39;data-action&#39;);
                    if (action == &#39;navigateBack&#39;) {
                        uni.navigateBack({
                            delta: 1
                        });
                    }
                }
            });
            
            
        </script>
    </body>
</html>
Copy after login
Related free learning recommendations:

programmingvideo

The above is the detailed content of How to upload files in uniapp. For more information, please follow other related articles on the PHP Chinese website!

Related labels:
source:php.cn
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template