微信调用相机上传照片+拍照上传
var images=''; // 上传商品 var jsApiSdk; var localIds; // 获取微信接口conf参数 $.ajax({ url:'/index.php?r=wxtest/wxshare', data:{url:window.location.href}, dataType:'json', success:function(data){ jsApiSdk = data; wx.config(jsApiSdk); } }); function wxChooseImage(obj) { wx.chooseImage({ count: 3, // 默认9 sizeType: ['original', 'compressed'], // 可以指定是原图还是压缩图,默认二者都有 sourceType: ['album', 'camera'], // 可以指定来源是相册还是相机,默认二者都有 success: function (res) { localIds = res.localIds; // 返回选定照片的本地ID列表,localId可以作为img标签的src属性显示图片 var html = ''; var serverIds = ''; $.each(localIds,function (i,v) { html+='<li class="box_flex_ss"><img class="fileImg" src="'+v+'" /></li>' }); obj.parents("#goodsImg").prepend(html); var i = 0, length = localIds.length; serverIds = []; function upload() { wx.uploadImage({ localId: localIds[i], success: function(res) { i++; serverIds.push(res.serverId); if (i < length) { upload(); }else { // 保存图片到本地 $.ajax({ url: '/index.php?r=img/wx_upload', data: {media_id: serverIds}, dataType: 'json', success: function (data) { /* * {data:[o:"www.***.jpg",1:"www.***.jpg"]} * */ $.each(data.path, function (i) { obj.parents(".picture").append('<input name="path[]" class="ycimgs" type="hidden" value="'+data.path[i]+'">'); }); $.each($(".ycimgs"),function(i,v){ images+=$(v).val()+','; }) images=images.substring(0,images.length-1); } }) } }, fail: function(res) { // alert(JSON.stringify(res)); } }); } upload(); } }); } wx.ready(function(){ $('#uplogo,#upload').click(function () { wxChooseImage($(this)); }) }) wx.error(function(res){ // config信息验证失败会执行error函数,如签名过期导致验证失败,具体错误信息可以打开config的debug模式查看,也可以在返回的res参数中查看,对于SPA可以在这里更新签名。 });