zoukankan      html  css  js  c++  java
  • jqueryForm 异步上传图片文件

    首先是HTML格式:

    <li>
                                        <span>上传:</span>
                                        <div class="loginInput">
                                            <div class="fileInput">
                                                <div class="fileBox">
                                                    {if $info['certificate']}
                                                    <img src="{$info['certificate']}" width="278">
                                                    {else}
                                                    <i class="filePic"></i>
                                                    <p>法人证书或营业执照复印件</p>
                                                    {/if}
                                                </div>
                                                <input class="files" id="fileupload" name="file" type="file" value="{$info['certificate']}"/>
                                                <input type="hidden" name="certificate" id="pic_val" >
                                            </div>
                                        </div>
                                    </li>

     input 的 name建议设置成file 要不有时候接收不到传递到后台的参数。

    然后是js:

    <script src="https://www.helloweba.com/demo/ajaxsubmit/jquery.form.min.js" type="text/javascript"></script>
    <script type="text/javascript">
        $(function () {
            var bar = $('.bar');
            var percent = $('.percent');
            var showimg = $('#showimg');
            var progress = $(".progress");
            var files = $(".files");
            var btn = $(".btn span");
            $("#fileupload").wrap("<form id='myupload' action='{HOST_NAME}user/User/import3' method='post' enctype='multipart/form-data'></form>");
            $("#fileupload").change(function(){
                $("#myupload").ajaxSubmit({
                    dataType:  'json',
                    beforeSend: function() {
    //                    showimg.empty();
    //                    progress.show();
    //                    var percentVal = '0%';
    //                    bar.width(percentVal);
    //                    percent.html(percentVal);
    //                    btn.html("上传中...");
                    },
                    uploadProgress: function(event, position, total, percentComplete) {
                        var percentVal = percentComplete + '%';
                        bar.width(percentVal);
                        percent.html(percentVal);
                    },
                    success: function(data) {
                        if(data.status == 0) {
                            $('.fileBox i').hide(); //删除
                            $('.fileBox p').hide(); // 删除
                            $('.fileBox img').attr('src', data.name); // 显示
                            $('.fileBox img').show(); //显示
                            $("#pic_val").attr('value', data.name); //传递图片值
    //                        $("#show_pic_show").attr('src', data.name); // 传递到初始阶段
    
                        }else{
                            layer.msg(data.name, {
                                offset: 't',
                                anim: 6
                            });
                            return false;
                        }
                        return false;
    
                    },
                    error:function(xhr){
                        btn.html("上传失败");
                        bar.width('0')
                        files.html(xhr.responseText);
                    }
                });
            });
        });
    </script>
    <!--ajax图片上传结束-->

    后台代码PHP:

    // 上传文件
        public function import3Action()
        {
            //上传头像
            if(isPost()){
                $file = $_FILES['file']['tmp_name'];
                if(!empty($file)){
                    Load::load_class('fileupload',DIR_BF_ROOT.'classes',0);
                    $up = new fileupload;
                    $up -> set("path", DIR_ROOT . 'static/uploadfile/zhizhao');
                    //            $up -> set("path",DIR_BF_ROOT . 'excel/');
                    $up -> set("maxsize", 200000);
                    $up -> set("allowtype", array("gif", "png", "jpg","jpeg"));
                    //            $up -> set("allowtype", array("xls"));
                    if($up -> upload("file")) {
                        // 获取上传后的文件名称
                        $filename =  '/static/uploadfile/zhizhao/'.$up->getFileName();
                        echo json_encode(array('status' => 0, 'name' => $filename));exit();
                    } else {
                        echo json_encode(array('statsu' => 1, 'name' => $up->getErrorMsg()));exit();
                    }
                }
            }
    
            //上传头像结束
    
            include $this->display('fileTest.html');
        }
  • 相关阅读:
    如何写Makefile?
    C语言变量的存储类别详解
    Longest Palindrome Substring
    Count Primes
    Closest Binary Search
    Search Insert Position
    Set Matrix Zeros ****
    Search for a Range
    Two Sum II
    Jump Game
  • 原文地址:https://www.cnblogs.com/photo520/p/7576092.html
Copyright © 2011-2022 走看看