我想从js中的对象调用函数
var elementId = event.target.id;
var controller = $('#' + elementId).data('controller') + 'Controller';
var action = $('#' + elementId).data('action');
这是我的数据
正确的调用看起来像这样
FilterController.getCurrentFilter('hosts-button');
但是我如何使用我的变量 elementId/controller/action 构建它?
我的尝试
controller + '.' + action + '(' + elementId + ')';
不工作
非常感谢您的帮助:)
最佳答案
只要在窗口/全局范围内,括号表示法就有效。
window[controller][action](elementId);
如果它不在 window/glob 范围内,您将需要一个保存第一层的对象。 [实际上这是一个更好的解决方案]
关于javascript object.function 通过变量调用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25847980/