从另一个回调函数获取变量

时间:2014-09-21 09:11:56

标签: javascript jquery jquery-plugins callback

我正在使用Jquery File Upload插件。如何获取 category_id varibale(在 processstop 回调函数中)并将其传递到完成回调函数。

jupload.fileupload({
    url: 'upload.php',
    acceptFileTypes: /(\.|\/)(gif|jpe?g|png)$/i,
    maxFileSize: 1536000,
    autoUpload: true,
    processfail: function(e, data){
        alert(data.files[data.index].error);
    },
    processstop: function (e, data) {
        // Create a category
        $.post('add_category.php',{'thumbnail':''},function(data) {
            var json = data,
                obj = JSON && JSON.parse(json) || $.parseJSON(json);

            // CATEGORY ID
            var category_id = obj.id;
        });
    },
    done: function (e, data) {
        // HOW CAN I GET THE `category_id` ABOVE TO USING ADD PRODUCT?

        // Add products to category
        $.post('product_add.php',{'category_id':category_id},function(data) {
            /* ...... */
        });
    }
});

1 个答案:

答案 0 :(得分:1)

最简单的方法是在jquery文件上传器初始化器上面定义category_id。

var category_id;
jupload.fileupload({
...
});