layui ajax文件上传

/**
* 需要引用的外部文件
**/
<link rel="stylesheet" type="text/css" href="layui/css/layui.css">
<script type="text/javascript" src="layui/layui.js"></script>
/**
* Html代码
**/
<div class="layui-form-item" id="img">
    <label class="layui-form-label">
        <span class="x-red">*</span>文章主图
    </label>
    <button type="button" class="layui-btn" id="upload_img_icon">
        <i class="layui-icon">&#xe67c;</i>上传图片
    </button>
    <div class="layui-upload-list">
        <img class="layui-upload-img" id="demo1" src="{$data.icon??''}">
        <p id="demoText"></p>
    </div>
</div>
/**
* JavaScript代码
**/
layui.use(['upload'], function(){
   $ = layui.jquery;
   var upload = layui.upload;
   var uploadInst = upload.render({
        elem: '#upload_img_icon' //绑定元素
        ,url: '{:url("/article/upload")}' //上传接口
        ,before: function (obj) {
            //预读本地文件示例,不支持ie8
            obj.preview(function (index, file, result) {
                $('#demo1').attr('src', result); //图片链接(base64)
            });
        },
        done: function(res){
            // console.log(res.filename);
            $('#img').append('<input type="hidden" value="'+res.filename+'" name="a_profile"/>');
        }
        ,error: function(){
            //请求异常回调
        }
    });
}
/**
* PHP代码
**/
public function upload()
{
    $file = request()->file('file');
    // 移动到框架应用根目录/public/uploads/ 目录下
    if($file){
        $info = $file->move('./uploads');
        if($info){
            $result=[
                'code'=>1,
                'msg'=>'上传成功',
                'filename'=>'/uploads/'.str_replace('\\', '/', $info->getSaveName())
            ];
            return json_encode($result);
        }else{
            return false;
        }
    }else{
        return false;
    }
}
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值