我有一个从动态生成的html调用的函数,但它没有被执行
功能。
$.check = function(s){
alert (s);
}
....然后...... 以下函数对象的内容值是上面函数的调用。
value is var s = 'hey';$.check(s);
function( event, ui) {
//////The following does nothing, not even an error
return ui.item.value;
}
如何执行" value"中存储的功能;
答案 0 :(得分:1)
在浏览器中执行此操作的唯一方法是eval
eval(ui.item.value);
Node支持更高级的内容,例如vm.runInNewContext(value,{/* context */})
。
但要注意eval,这很危险。 https://www.google.com/?q=eval+is+evil
答案 1 :(得分:0)
这很简单,只需:
function( event, ui) {
if (typeof ui.item.value === 'function') {
ui.item.value.call();
}
}
将var s
创建为函数,如下所示:
ui.item.value = function () {
var s = 'hey';
$.check(s);
}