删除带缩放版本的图像后,`itemLimit`计数关闭

时间:2014-05-08 02:54:12

标签: fine-uploader

我使用以下内容并遇到问题,您删除了上传的图片。 itemLimit设置为6,因为有" 3"每个上传项目的图像。

hideScaled:true

所以它只显示一个带有一个删除按钮的缩略图。 如何让系统从内部对象中删除三个图像。 如果上传图像并删除几次,就会发生这种情况。

由于

$("#fine-uploader").fineUploader({
    session: {
        endpoint: 'imageStatus.cfm',
    params : {transaction_id : 11205}
},
debug: true,
request: {
    endpoint: 'upload.cfm',
params : {details : "2_250/786_05072014|4483|786|11205|2"}
},
validation: {
    itemLimit: 6,
    allowedExtensions: ["jpeg", "jpg", "gif" , "png"],
    sizeLimit: 8000000 // 8 MiB
},
messages : {
    tooManyItemsError : "Sorry but you are only able to upload 2 images"
    },
deleteFile: {
    enabled: true, // defaults to false
    endpoint: 'upload_delete.cfm',
    method: 'post',
    params : {wallid : "786"}
},
retry: {
    enableAuto: false
},
scaling: {
    sendOriginal: true,
    hideScaled: true,
    sizes: [
        {name: "THUMB_XX", maxSize: 113},
        {name: "FULLIMAGE", maxSize: 450}
        ]
    }

})

2 个答案:

答案 0 :(得分:1)

您可以使用onDelete回调手动删除缩放的图像。隐藏缩放图像时,原始图像的Id将是最高ID。因此,例如,如果您上传单个文件,原始文件将具有id = 2,并且缩放的图像将具有id = 1和id = 0。如果您上传第二张图片,原始ID将为5,缩放后的图片将为3和4。

您只需要检测哪个ID正在删除,然后使用回调删除之前的2个ID。

以下示例应该可以解决问题:

$('#fine-uploader').fineUploader({
validation: {
    allowedExtensions: ["gif", "jpeg", "jpg", "png", "bmp"],
    acceptFiles: "image/gif, image/jpeg, image/png, image/bmp",
    sizeLimit: 5000000,
    itemLimit: 6
},
deleteFile: {
    enabled: true,
    endpoint: "/MyEndPoint/DeleteImage",
    method: 'POST',
},
scaling: {
    sendOriginal: true,
    hideScaled: true,
    sizes: [
        { name: "small", maxSize: 350 },
        { name: "large", maxSize: 800 },
    ]
},
callbacks: {
    onDelete: function (id) {
        if (id == 2)
        {
            $("#fine-uploader").fineUploader("deleteFile", 0);
            $("#fine-uploader").fineUploader("deleteFile", 1);
        }
        else if (id = 5)
        {
            $("#fine-uploader").fineUploader("deleteFile", 3);
            $("#fine-uploader").fineUploader("deleteFile", 4);
        }
    },
},

});

答案 1 :(得分:0)

it says that the hideScaled option literally only hides the scaled file items in the UI时文档很严重。如果您选择隐藏这些项目并且您使用的是严格的itemLimit,则您需要监听原始文件的删除状态更改,并触发通过API删除缩放项目的代码。< / p>