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可以在这里更新签名。
        });
  • 相关阅读:
    设计模式之工厂模式-抽象工厂(02)
    1036 跟奥巴马一起编程 (15 分)
    1034 有理数四则运算 (20 分)
    1033 旧键盘打字 (20 分)
    1031 查验身份证 (15 分)
    大学排名定向爬虫
    1030 完美数列 (25 分)二分
    1029 旧键盘 (20 分)
    1028 人口普查 (20 分)
    1026 程序运行时间 (15 分)四舍五入
  • 原文地址:https://www.cnblogs.com/zxcc/p/7844304.html
Copyright © 2011-2022 走看看