我无法相信我一直未能找到解决此问题的方法。在我看来,这是一个非常“常见”的问题,它的解决方案应该遍布整个网络!
我从数据库查询中获取了这些数组:
var ids = ['12', '15', '40'];
var actions = ['hide', 'show', 'fadeIn'];
我希望通过循环遍历数组,并在DOM上执行相应的操作,就像这样:
for(var i=0; i < ids.length; i++){
$('#row_'+ids[i]).actions[i]();
}
现在你有了想法。实际上,我并没有预料到$('#row_'+ids[i]).actions[i]();
会像这样工作。我尝试过类似的东西。
$('#row_'+ids[i]).effect(actions[i]);
没有用。我相信eval()
应该可以工作,但在绝望中甚至尝试过了,但无法获取正确的字符串使其工作。
在Stack Overflow上的其他地方,我遇到了类似的问题,使用全局window
解决,例如:
var fn = 'hideSomething';
window.fn();//where hideSomething was a defined function.
但这个方法是在jQuery
上定义的,而不是在window
上定义的。
所以我们就到这里了!