我正在试图弄清楚如何将参数传递给一个函数,这实际上是第二个函数。很难解释所以这里有一些示例代码:
keyDownEvent("#thisID",nameOfFunctionToRunOnOpen);
function keyDownEvent(id, openFunction) {
$(id).dialog( {
close: focusOnInput(),
open: nameOfFunctionToRunOnOpen,
modal: true,
show: "clip",
hide: "fade"
});
}
其他所有内容都是我的.dialog()调用的标准,只是想修改Open上发生的事情。知道如何实现这一目标吗?
答案 0 :(得分:1)
只需使用匿名函数:
function keyDownEvent(id, openFunction) {
$(id).dialog( {
close: focusOnInput(),
open: function(){openFunction(someArgument);},
modal: true,
show: "clip",
hide: "fade"
});
}
答案 1 :(得分:0)
您的第二个参数应该是一个实际的函数对象,而不仅仅是字符串中函数的名称。
答案 2 :(得分:0)
您可以简单地将该功能传递给您的第二个功能。函数是JavaScript中的对象,可以保存在变量中:
function outer(someOtherFunction) {
someOtherFunction();
}
outer(function () {
alert('inner function');
});