Mootools Request.JSON动态回调
Mootools Request.JSON dynamic callback
开发一个应用程序,所有表格数据都作为对象返回。
某些单元格将具有onclick事件。
JSON对象恢复得很好,并且对象调用"cb"中有一个键。
这是由服务器上的逻辑设置的。
我的问题是对象键cb将包含一个字符串,我如何在不使用eval()的情况下将其作为有效函数运行
示例:
var archive = function() {
console.log('archiving');
}
new Request.JSON ({
...
onSuccess: function(r){
//r.cb: 'archive'
docuemnt.id(td).addEvent('click', r.cb);
}
...
});
docuemnt.id(td).addEvent('click',eval(r.cb));//正在寻找替代
我知道我想得太多了,应该没那么难。今天一定还没喝够咖啡。
使用方括号表示法。如果您的函数在全局范围内,请使用window[r.cb]
:
new Request.JSON ({
...
onSuccess: function(r) {
//r.cb: 'archive'
document.id(td).addEvent('click', window[r.cb]);
}
...
});
如果您的函数不在全局范围内,请将您的函数移动到一个对象中:
var callbacks = {
archive: function () { ... },
foo: function () { ... },
...
}
然后使用callbacks[r.cb]
。
相关文章:
- Angular Js 尝试从主按钮回调动态更改模态文本并且不起作用
- Javascript 中的动态回调
- JQuery将字符串识别为函数动态回调
- 谷歌DFP动态广告刷新-是否有回调来确定广告是否已加载
- Javascript承诺动态回调
- 服务回调中的KendoUI网格服务器动态列绑定
- AngularJS - 指令中的动态回调
- 在回调方法中传递动态值
- _googWcmGet回调无法通过具有动态电话号码的GTM工作
- 为动态加载的javascript文件实现“错误”回调
- PassportJS - 动态设置状态以允许在回调时重定向
- ng-repeat之后的Angular JS回调是动态完成的
- 创建带有回调的动态 JSON 数组(内部闭包问题)
- 使用回调在 Chrome 中动态加载样式表
- jQueryUI对话框带有使用回调的动态按钮
- Mootools Request.JSON动态回调
- 如何在动态加载javascript文件后添加回调
- CasperJS不能正确触发动态脚本/链接调用的回调
- 动态脚本hack回调
- 突变观察器没有触发动态变化的回调