2012-03-07 114 views
10

在jquery我想通過更改變量名稱來禁用我想要的任何插件。但是下面的代碼不起作用jQuery - 使用變量作爲函數名稱

function disablePlugin(functionName) { 
    $('#divID').functionName('disable') 
} 

disablePlugin('sortable'); 

有關我如何設法做到這一點的任何想法?

回答

24

這是你會怎麼做:

function disablePlugin(functionName) { 
    $('#divID')[functionName]('disable') 
} 

disablePlugin('sortable'); 

這工作,因爲someObject.foo是一回事someObject['foo']

+2

+1解釋它是如何工作的。 – bPratik 2012-03-07 15:27:23

+0

非常感謝。它對我來說很有魅力。再一次感謝。 – 2013-01-31 07:53:53

1

要調用傳過來的字符串的函數,你可以做

function disablePlugin(functionName) { 
    $('#divID')[functionName]('disable') 
} 

disablePlugin('sortable');