gpt4 book ai didi

javascript - 将函数传递给小部件工厂小部件,而不执行它

转载 作者:塔克拉玛干 更新时间:2023-11-02 21:44:45 27 4
gpt4 key购买 nike

我正在 jQueryUI 小部件工厂中开发一个 jQuery 小部件,它需要一个函数作为参数传递给它。问题是每次创建一个新的小部件实例时,传递的函数都会运行。这是我的代码:

       $(function(){
$('a').addrow({
inputs:[
{
name:'loo',
type:'submit',
click:function(){alert(1);}
}
]
})

})

$.widget('namespace.addrow', {
options: {
inputs:[]
},
_create: function () {
alert(2);
}
})

如您所见,我在 inputs 数组中传递了一个匿名函数,并且 alert(1); 在文档准备就绪时立即执行。

最佳答案

我不知道 jQueryUI 小部件工厂,但如果您的匿名函数正在执行,请将其包装在另一个匿名函数中,如下所示:

click:function(){
return (function(){
alert(1);
}) ;
}

这应该有效。

更新:不使用返回:

click:function(){
this.click = (function(){
alert(1);
}) ;
}

关于javascript - 将函数传递给小部件工厂小部件,而不执行它,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20918206/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com