0

看看这个例子。使用jquery文件上传

$('#button').fileupload({
    url: 'upload.app',
    dataType: 'json',
    autoUpload: false,
    sequentialUploads: true,

    add: function (e, data) {
    //access myOptions property here            
    },
    fail: function (e, data) {
    // and here
    },
    done: function (e, data) {
    // and here
    }
}).prop('myOptions',
        {
            optA: name,
            optB: 0                
        });

我不想在回调方法 add、fail 和 done 中访问 myOptions 属性。但是this.myOptions只为失败和完成回调定义。在 add 回调this.myOptions中是未定义的。有没有其他方法可以访问回调方法中的 myOption 属性?

4

2 回答 2

1

您可以使用.data()而不是.prop()

$('#button').fileupload({
    url: 'upload.app',
    dataType: 'json',
    autoUpload: false,
    sequentialUploads: true,

    add: function (e, data) {
    //access myOptions property here  
         myOptions = $(this).data("myOptions")          
    },
    fail: function (e, data) {
    // and here
         myOptions = $(this).data("myOptions")
    },
    done: function (e, data) {
    // and here
         myOptions = $(this).data("myOptions")
    }
}).data('myOptions',
        {
            optA: name,
            optB: 0                
        });
于 2014-06-27T22:38:08.153 回答
0

假设 e 是一个实际事件。它可能包含触发事件的元素。尝试使用 Chrome Dev Tools 的 Firebug 在您想要的事件上设置断点。您甚至可以在要断点的代码中键入调试器。一旦断点检查/观察 e 参数。它可以包含像 e.target 这样的东西,它会指向元素,然后访问该元素的属性。

于 2014-06-27T22:27:17.130 回答