<input type="file" class="add-view-img-btn j-upbtn" name="quanjing" data-type="quanjing" data-maxupimg="15" accept="image/jpeg">
$('.j-upbtn').on('change',function(e){
var _file = this.files[0];
var para = {};
para.name = $(this).attr('name');
para.type = $(this).attr('data-type');
para.maxupimg = $(this).attr('data-maxupimg');
var formData = new FormData();
formData.append('name', para.name);
formData.append('file', _file);
formData.append('type', para.type);
formData.append('data', $('#dataParms').val());
formData.append('iscamera',2);
$.ajax({
url: "{:U('Api/Carclaim/uploadImage',array("sessionid"=>$_GET["sessionid"],"token"=>$_GET["token"]))}",
type: "POST",
data: formData,
processData: false,
contentType: false,
beforeSend:function(){
dialog.loading.open('图片上传中');
},
complete:function(){
dialog.loading.close();
},
success: function (res) {
console.log(res)
if(res.status){
dialog.toast(res.msg,'success',2000);
var tmphtml = '<li id="file-'+res['data']['id']+'" class="view-img-item" onclick="openView(this)">'+
'<div class="bgimg" style="background-image:url('+res['data']['imgPath']+')"></div>'+
'<input type="hidden" name="'+res['data']['type']+'[]" value="'+res['data']['id']+'"/>'+
'<span class="delspanCar" onclick="delspanCar('+res['data']['id']+',this)"><i class="iconfont icon-shanchu"></i></span>'+
'</li>';
$(obj).parents('.add-view-img-btn-wrap').siblings('ul').append(tmphtml)
}else{
dialog.toast(res.msg,'error',1500)
}
},
error:function(xhr,text){
dialog.toast(xhr, 'error', 2000);
}
});
});
以上代码在微信和手机浏览器中没有问题,放到内嵌页里, 后端说接收不到参数。! 始终返回参数不完整。
之前用的 localResizeIMG 这个插件做压缩,。都没有问题的。
现在我改成new formData 上传。可还是说参数不完整,真的没法了~ 求大神指点迷津!!
1.前天刚做完一个安卓内嵌H5也有一个上传功能,我遇到的是上传控件打不开。后来查了一下是安卓给屏蔽掉了。、
2.还有一个问题就是跨域上传,如果是jq可能要加两个参数xhrFields: {withCredentials: true},crossDomain: true;
不知道对你有没有帮助。