zoukankan      html  css  js  c++  java
  • 微信调用相机上传照片+拍照上传

    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可以在这里更新签名。
        });
  • 相关阅读:
    WPF : ListBox的几种Template属性
    提问的角度 5W1H,GRETT
    软件=科学+技术+工程, 软件的成败, 软件开发的首要任务
    软件的几个问题
    体会
    "复述一遍"是沟通的好办法
    WCF客户端调用IIS上WebService的安全问题
    C#处理chart
    js获取asp.net服务器端控件的值Demo
    SQL Server的复合索引适当用法
  • 原文地址:https://www.cnblogs.com/zxcc/p/7844304.html
Copyright © 2011-2022 走看看