仿ajax文件上传预览

【html】

<from method="post" action="t1.PHP">
图片:<input type="file" name="pic" id="pic"/><br/>
      <input type="hidden" name="bpic" value="" id="bpic"/>
     <p>
       <img src="default.png" alt="" id="bpic_img">
     </p>
     <input type="submit" value="提交" onclick="return deal_form();"/>
</form>

【js】

//需要引入jquery.js插件
   //需要引入jquery.form.js插件
 $(function(){
   var act = "<form class='myupload' action='t2.PHP' method='post' enctype='multipart/form-data'></form>";
   //处理第一个图片上传部分
   $("#pic").wrap(act);
   
   //文件选择触发子表单提交
   $("#pic").change(function(){
       $(this).parent(".myupload").ajaxSubmit({
	   dataType:  'json',success: function(data) {
               var src = data.pic;
               //更改预览图像地址
               $('#bpic_img').attr("src",src);
               $('#bpic').val(data.name);
	   },error:function(xhr){
		alert("图片上传失败");
   	   }
	});
    });
  });

  //主表单提交时 删掉所有内嵌表单
  function deal_form(){
	$('.myupload').remove();
	return true;
  }


【t2.PHP

//实际上就跟普通文件上传一个意思
 //然后json返回封装结果即可
 $tmp = $_FILE['pic']['tmp_name'];
 ...
 echo json_encode(
      array(
        'name'=>$filename,'pic'=>$filepath
      )
   );

相关文章

IE6是一个非常老旧的网页浏览器,虽然现在很少人再使用它,但...
PHP中的count()函数是用来计算数组或容器中元素的个数。这个...
使用 AJAX(Asynchronous JavaScript and XML)技术可以在不...
Ajax(Asynchronous JavaScript and XML)是一种用于改进网页...
本文将介绍如何通过AJAX下载Excel文件流。通过AJAX,我们可以...
Ajax是一种用于客户端和服务器之间的异步通信技术。通过Ajax...