<html>
<body>
<form action="_ossupload_.php" method="post" enctype="multipart/form-data">
<label for="file">Filename:</label><br/>
<input type="hidden" name="token" id="token" value="xxxyyy111222" />
<input type="text" name="filename1" id="filename1" value="" />
<input type="file" name="file1" id="file1" onchange="doupload('file1','filename1');" />
<span id="res1"></span>
<input type="text" name="filename2" id="filename2" value="" />
<input type="file" name="file2" id="file2" onchange="doupload('file2','filename2');" />
<span id="res2"></span>
</form>
<script src="http://apps.bdimg.com/libs/jquery/1.11.3/jquery.min.js"></script>
<script language="Javascript">
/*
本程序仅用于学习,不要作为生产用途。
由此导致的损失自负
*/
function doupload(file,filename){
var fileArray = document.getElementById(file).files;
if (fileArray=="")
{
alert("none");
}
var formData = new FormData();
for(var i=0; i<fileArray.length; i++){
formData.append("fileArray", fileArray[i]);
}
var token=$("#token").val(); //密钥,用于验证表单,自行设计
formData.append("token",token);
console.log(fileArray);
$.ajax({
url: "ossupload.php", //传向后台服务器文件
type: 'post', //传递方法
data: formData, //传递的数据
async:false, //这是重要的一步,防止重复提交的
datatype:"JSON",
cache: false, //设置为false,上传文件不需要缓存。
contentType: false, //设置为false,因为是构造的FormData对象,所以这里设置为false。
processData: false, //设置为false,因为data值是FormData对象,不需要对数据做处理。
success: function (res) {
//alert('response:'+responseStr);
var jsonObj=eval("("+res+")");
var success=jsonObj.success;
if (success=="1")
{
$("#"+filename+"").val(jsonObj.msg); //文件地址自动赋值于input,方便保存
alert("上传成功!文件名:"+jsonObj.msg+"");
}else{
alert("Upload Fail :"+jsonObj.msg+"");
}
},
error: function () {
alert("Upload Error");
}
});
}
</script>
</body>
</html>
评论3
最新资源