使用ajax 2.0结合JQ实现文件预览效果,兼容性较好推荐使用

<!DOCTYPE html>
<html lang="en">
<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>Document</title>
    <script src='../assets/vendors/jquery/jquery.js'></script>
</head>
<body>
    <input id="avatar" name="avatar" type="file">
    <img src="">
</body>
<script>
    $(function(){
    
    //兼容性不好
    // $("#avatar").change(function(){
    // var resultURL=URL.createObjectURL(this.files[0]);
    
    // $(this).next('img').attr('src',resultURL);
    
    // })
    //使用ajax兼容更高的版本,实现图片预览,兼容性较好,推荐使用
    //change 当表单元素的value值发生改变时就会触发.
    $("#avatar").change(function(){
    
      var sendData = new FormData();
      sendData.append('preview',this.files[0]);
      $.ajax({
        url:'http://www.baixiu.com/admin/API/06.savePreviewImg.php',
        data:sendData,
        type:'post',
        contentType:false,
        processData:false,
        success:function(backData){
          $("#avatar").next('img').attr('src',backData.url).fadeIn();
        }
      })
    })
      })
    </script>
</html>

接口函数代码为

请求地址:
http://www.baixiu.com/admin/API/06.savePreviewImg.php
请求方法:post
请求的参数:
preview:上传的文件
返回的数据格式
{url:'图片地址'}
后端代码:

<?php
// 设置格式json
header( ' content-type:application/json;charset=utf-8 ');
// // 引入函数
// include '../../tools/tools.php';
// 接收文件(写死的文件名) 自己封装的函数 会保存文件原始的名字
// my_move_upload_file('preview','../../uploads/');
move_uploaded_file($_FILES[ ' preview '][ ' tmp_name '], ' ../../uploads/preview.jpg ');
// 返回图片地址 拼接上一个时间戳,解决占用服务器内存问题
// echo '../../uploads/preview.jpg?'.time();
$backData = array( ' url ' => ' ../../uploads/preview.jpg? ' . time());

echo json_encode($backData);
? >

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
YOLO高分设计资源源码,详情请查看资源内容中使用说明 YOLO高分设计资源源码,详情请查看资源内容中使用说明 YOLO高分设计资源源码,详情请查看资源内容中使用说明 YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值