zoukankan      html  css  js  c++  java
  • 目前问题:plupload上传带参数到后台


    目前问题:plupload上传带参数到后台,迟迟没有解决!!!



    昨晚到23点多终于完成了!

    直接上代码!

    var uploader = new plupload.Uploader({ //实例化一个plupload上传对象
                    browse_button: 'btnChange',
                    url: '/Info/Upload',
                    flash_swf_url: 'js/Moxie.swf',
                    silverlight_xap_url: 'js/Moxie.xap',
                    filters: {
                        mime_types: [ //只允许上传图片文件
                          { title: "图片文件", extensions: "jpg,gif,png" }
                        ]
                    }
                });
                uploader.init(); //初始化
                //绑定文件添加进队列事件
                uploader.bind('FilesAdded', function (uploader, files) {
                    for (var i = 0, len = files.length; i < len; i++) {
                        var file_name = files[i].name; //文件名
                        var file_size=uploader.files[i].origSize;//文件大小
                        //构造html来更新UI
                        var html = '<tr id="file-' + files[i].id + '"><td class="file-name">' + file_name + '</td><td class="file-size">' + file_size + '</td><td class="progress"></td></tr>';
                        $(html).appendTo('#file-list');
                        !function (i) {
                            previewImage(files[i], function (imgsrc) {
                                $('#file-' + files[i].id).append('<img src="' + imgsrc + '" />');
                            })
                        }(i);
                    }
                });
    ——————————————————————————————这里是重点。在上传之前绑定事件中,重新定义Url即可!!!。。。尴尬啊
                uploader.bind('BeforeUpload', function (uploader, files) {
                    uploader.settings.url = "/Info/Upload?cid=" + $("#seled").val();
                    console.log(uploader);
                    console.log(files);
                });
                document.getElementById('uploadfiles').onclick = function (data) {
                    uploader.start();
                    return false;
                };
                //plupload中为我们提供了mOxie对象
                //有关mOxie的介绍和说明请看:https://github.com/moxiecode/moxie/wiki/API
                //如果你不想了解那么多的话,那就照抄本示例的代码来得到预览的图片吧
                function previewImage(file, callback) {//file为plupload事件监听函数参数中的file对象,callback为预览图片准备完成的回调函数
                    if (!file || !/image//.test(file.type)) return; //确保文件是图片
                    if (file.type == 'image/gif') {//gif使用FileReader进行预览,因为mOxie.Image只支持jpg和png
                        var fr = new mOxie.FileReader();
                        fr.onload = function () {
                            callback(fr.result);
                            fr.destroy();
                            fr = null;
                        }
                        fr.readAsDataURL(file.getSource());
                    } else {
                        var preloader = new mOxie.Image();
                        preloader.onload = function () {
                            preloader.downsize(300, 300);//先压缩一下要预览的图片,宽300,高300
                            var imgsrc = preloader.type == 'image/jpeg' ? preloader.getAsDataURL('image/jpeg', 80) : preloader.getAsDataURL(); //得到图片src,实质为一个base64编码的数据
                            callback && callback(imgsrc); //callback传入的参数为预览图片的url
                            preloader.destroy();
                            preloader = null;
                        };
                        preloader.load(file.getSource());
                    }
                }


  • 相关阅读:
    Best wishes for a wonderful new year.
    Using X++ code Reading to CSV file
    Types of delete action
    get focus from the FORM in dynamcis AX 2009
    Database Lock
    Using x++ code export to CSV file from dynamics AX 2009
    Using x++ code updated to system filed values
    Merry Christmas and Best Wishes for a Happy New Year
    the most reluctant to delete to New Year SMS
    《那些年啊,那些事——一个程序员的奋斗史》——53
  • 原文地址:https://www.cnblogs.com/MartinLee/p/7622715.html
Copyright © 2011-2022 走看看