PHP+Ajax+JS实现多图上传

本文实例在wap站项目中需要做一个ajax多图片上传,结合js插件做了一个,供大家参考,具体内容如下

rush:PHP;"> /* ajax 上传图片 */ var num = 0; // 点击删除图片 function onDelete(num){ if($("#"+num).attr('src')!="__PUBLIC__/Home/images/jiazai.gif" && $("#"+num).attr('src')!=""){ if(confirm("确认删除吗")){ $("#a"+num).remove(); }else{ // } } } $(function(){
$("#file0").bind("change",function(){

      clickUpload(num);

}); 
function clickUpload(num){
   var imgObject = document.getElementById('file0'); // <a href="https://www.jb51.cc/tag/wenjian/" target="_blank" class="keywords">文件</a>对象

  $("#yulan").append("<a id='a"+num+"' onclick='onDelete("+num+")' href='javascript:;'> <img id='"+num+"' width='75' height='75'  src='__PUBLIC__/Home/images/jiazai.gif'/></a>");

   // $("#yulan").append("<li id='a"+num+"' ><img id='"+num+"' src='__PUBLIC__/Home/images/jiazai.gif' /><a href='javascript:;' onclick='onDelete("+num+")'>删除</a></li>");
   var ge<a href="https://www.jb51.cc/tag/timage/" target="_blank" class="keywords">timage</a>Src = getFullPath(imgObject); // 本地路径
   // 实例化image对象

   var pos = ge<a href="https://www.jb51.cc/tag/timage/" target="_blank" class="keywords">timage</a>Src.lastIndexOf(".");
   var lastname = ge<a href="https://www.jb51.cc/tag/timage/" target="_blank" class="keywords">timage</a>Src.substring(pos,ge<a href="https://www.jb51.cc/tag/timage/" target="_blank" class="keywords">timage</a>Src.length) // <a href="https://www.jb51.cc/tag/tupian/" target="_blank" class="keywords">图片</a>后缀

   if(lastname!=".jpg" && lastname!=".png" && lastname!=".jpeg" && lastname!='.gif'){
     $("#a"+num).remove();
      alert("请选择一张<a href="https://www.jb51.cc/tag/tupian/" target="_blank" class="keywords">图片</a>");
   }else{
     ajaxFileUpload(num);
     $("#file0").unbind("change").bind("change",function(){
       clickUpload(num);
      });
   } 
   num++;
}


function getFullPath(obj) {  //得到<a href="https://www.jb51.cc/tag/tupian/" target="_blank" class="keywords">图片</a>的完整路径
  if (obj) {
    if (window.navigator.userAgent.indexOf("MSIE") >= 1) {
      obj.select();
      return document.selection.crea<a href="https://www.jb51.cc/tag/tera/" target="_blank" class="keywords">tera</a>nge().text;
    }else if (window.navigator.userAgent.indexOf("Firefox") >= 1) {
      if (obj.files) {
        return obj.files.item(0).getAsDataURL();
      }
      return obj.value;
    }
      return obj.value;
  }
} 
function ajaxFileUpload(num) {

  $.ajaxFileUpload
  (
    {
      url: 'http://xxxx/updateImg',//用于<a href="https://www.jb51.cc/tag/wenjian/" target="_blank" class="keywords">文件</a><a href="https://www.jb51.cc/tag/shangchuan/" target="_blank" class="keywords">上传</a>的服务器端请求地址
      secureuri: false,//是否需要安全协议,一般设置为false
      fileElementId: 'file0',//<a href="https://www.jb51.cc/tag/wenjian/" target="_blank" class="keywords">文件</a><a href="https://www.jb51.cc/tag/shangchuan/" target="_blank" class="keywords">上传</a>域的ID
      dataType: 'json',//返回值类型 一般设置为json
      success: function (data) //服务器成功响应处理<a href="https://www.jb51.cc/tag/hanshu/" target="_blank" class="keywords">函数</a>
      {
        var jsonText = data; 
        console.log(jsonText);
        if(jsonText['status']==1){ 
          if(jsonText['info']!=""){ 
            console.log(jsonText['info']);
            $("#"+num).attr("src","__PUBLIC__//Admin/Upload/"+jsonText['info']);

             var images = $("#img").val();

            if(images!=""){
              $("#img").val(images+","+jsonText['info']);
            }else{
              $("#img").val(images+""+jsonText['info']);
            }

          }
        }else{
          $("#a"+num).remove();
          // alert("<a href="https://www.jb51.cc/tag/tupian/" target="_blank" class="keywords">图片</a><a href="https://www.jb51.cc/tag/shangchuan/" target="_blank" class="keywords">上传</a>失败");  
        }            
      },error: function (data,e)//服务器响应失败处理<a href="https://www.jb51.cc/tag/hanshu/" target="_blank" class="keywords">函数</a>
      {
        alert(e);
      }
    }
  )
}

});

以上就是本文的全部内容,希望对大家学习PHP程序设计有所帮助。

相关文章

统一支付是JSAPI/NATIVE/APP各种支付场景下生成支付订单,返...
统一支付是JSAPI/NATIVE/APP各种支付场景下生成支付订单,返...
前言 之前做了微信登录,所以总结一下微信授权登录并获取用户...
FastAdmin是我第一个接触的后台管理系统框架。FastAdmin是一...
之前公司需要一个内部的通讯软件,就叫我做一个。通讯软件嘛...
统一支付是JSAPI/NATIVE/APP各种支付场景下生成支付订单,返...