FormData 对象,可以把form中所有表单元素的name与value组成一个queryString,提交到后台。在使用Ajax提交时,使用FormData对象可以减少拼接queryString的工作量。
使用FormData对象
1.创建一个FormData空对象,然后使用append方法添加key/value
[javascript]view plaincopy
varformdata=newFormData();
formdata.append('name','fdipzone');
formdata.append('gender','male');
2.取得form对象,作为参数传入到FormData对象
[html]view plaincopy
[javascript]view plaincopy
varform=document.getElementById('form1');
varformdata=newFormData(form);
使用FormData提交表单及上传文件:
[html]view plaincopy
name:
gender:malefemale
photo:
server.php[php]view plaincopy
$name=isset($_POST['name'])?$_POST['name']:'';
$gender=isset($_POST['gender'])?$_POST['gender']:'';
$filename=time().substr($_FILES['photo']['name'],strrpos($_FILES['photo']['name'],'.'));
$response=array();
if(move_uploaded_file($_FILES['photo']['tmp_name'],$filename)){
$response['isSuccess']=true;
$response['name']=$name;
$response['gender']=$gender;
$response['photo']=$filename;
}else{
$response['isSuccess']=false;
}
echojson_encode($response);
?>
