Rumah > pembangunan bahagian belakang > tutorial php > ajax--iframe模拟ajax文件上传效果

ajax--iframe模拟ajax文件上传效果

WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB
Lepaskan: 2016-07-29 09:05:15
asal
777 orang telah melayarinya

js无权读取本地的文件,so不能上传文件但是
有这几种方法
1 iframe伪装 jquery-uploaded-file
2 swf插件  (这个不讲,是一个单独的软件
3 html5

iframe模拟ajax文件上传效果
1捕捉表单提交动作
2创建iframe
3target修改指向 iframe
4去掉iframe


<h1></h1>
<!-- enctype 属性可能的值:
application/x-www-form-urlencoded
multipart/form-data
text/plain
规定在发送表单数据之前如何对其进行编码。

target
规定在何处打开 action URL。(这边是iframe里) 
onsubmit 点击运行js的方法通过才到`action

文件上传说没上传  enctype没写-->
	
Salin selepas log masuk

js部分(用了jquery)  创建iframe 

<script type="text/javascript" src="http://libs.baidu.com/jquery/1.7.2/jquery.min.js"></script>
	
	<script type="text/javascript">
	function upfile(){
		// 创建iframe 和属性name
		var ifname = &#39;up&#39;+Math.random();
		$(&#39;<iframe name="&#39; + ifname +&#39;">&#39;).appendTo($(&#39;body&#39;));
		// form表单加入target属性,form点击在iframe打开
		$(&#39;form:first&#39;).attr(&#39;target&#39;,ifname);

	}


	</script>
Salin selepas log masuk
php部分  error为0就代表文件上传成功 在之前写的h1标签里出现信息

<?php if(empty($_FILES)){
	exit(&#39;no file&#39;);
}

$error = $_FILES[&#39;pic&#39;][&#39;error&#39;] == 0 ? &#39;上传成功&#39;:&#39;上传失败&#39;;
echo "<script> parent.document.getElementsByTagName('h1')[0].innerHTML = '$error'";

?>
Salin selepas log masuk

ajax--iframe模拟ajax文件上传效果

以上就介绍了ajax--iframe模拟ajax文件上传效果,包括了方面的内容,希望对PHP教程有兴趣的朋友有所帮助。

Label berkaitan:
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan