2012-03-07 35 views
10

Trong Jquery tôi muốn vô hiệu hóa bất kỳ plugin nào tôi muốn bằng cách thay đổi tên biến. Tuy nhiên, mã sau không hoạt độngjQuery - sử dụng biến làm tên hàm

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

disablePlugin('sortable'); 

bất kỳ ý tưởng nào về cách tôi quản lý để làm điều này?

Trả lời

24

Đây là cách bạn sẽ làm điều đó:

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

disablePlugin('sortable'); 

này hoạt động vì someObject.foo là điều tương tự như someObject['foo']

+2

+1 để giải thích cách hoạt động. – bPratik

+0

Cảm ơn rất nhiều. Nó đã làm việc như quyến rũ đối với tôi. Cảm ơn một lần nữa. –

1

Để gọi chức năng thông qua tại như một chuỗi, bạn có thể làm

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

disablePlugin('sortable'); 
Các vấn đề liên quan