我的对象有一个回调:

var MyObject = {
CallBack: "function (whichSubMenuIsClicked, subMenuObjectTag) { self.doStuff(whichSubMenuIsClicked.SubMenuItem, whichSubMenuIsClicked.HeaderColumnName, whichSubMenuIsClicked.DivIdentifier);}",
}

回调是一个字符串。现在我需要使用 MyObject.CallBack(param1, param2) 执行它
如何使用 jquery 或 javascript 完成此操作。在这种情况下, self 是调用另一个小部件的原始小部件。因此回调是在原始小部件上进行的。

最佳答案

使用 Function 构造函数,它接受参数名称列表,后跟函数体:

var MyObject = {
    CallBack: "self.doStuff(whichSubMenuIsClicked.SubMenuItem, whichSubMenuIsClicked.HeaderColumnName, whichSubMenuIsClicked.DivIdentifier)",
};

var myfunc = new Function("whichSubMenuIsClicked", "subMenuObjectTag", MyObject.CallBack);

关于javascript - 将字符串作为javascript函数执行,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/13530761/

10-12 13:34