可能重複方法:
javascript object, access variable property name?JavaScript調用對象通過其名稱
我試圖調用它的名字對象的方法,當某些事件發生 - 這是我的代碼:
var imageObject = {
sendImage : function(obj) {
"use strict";
var thisId = obj.attr('id');
var thisSubmit = obj.attr('data-submit');
var thisCallback = obj.attr('data-callback');
var thisUrl = $('#' + obj.attr('data-url')).text();
new AjaxUpload(thisId, {
action: thisUrl,
name: 'thisfile',
onSubmit: imageObject.thisSubmit,
onComplete: imageObject.thisCallback
});
}
}
我也想將參數傳遞給提交和回調方法。
目前沒有任何反應,我敢肯定我沒有說得對 - 任何人都可以解釋如何實現這一目標?
我也用下面的提交和完整:
onSubmit: function(file, extension) {
imageObject.thisSubmit(file, extension);
},
onComplete: function(file, response) {
imageObject.thisCallback(file, response);
}
但我得到的是錯誤說:的
imageObject.thisSubmit is not a function
屬性只存儲名稱(字符串)該對象內的方法 - 所以它會例如'uploadImage'。
是'數據submit'的功能或字符串的值? – Alnitak
@Alnitak'.attr'返回一個沒有任何處理的字符串:P – Esailija
@Esailija是的,我正在讀它作爲'.data()',它可以返回任何東西。 – Alnitak