gpt4 book ai didi

javascript - $(#id).on() 不适用于动态创建的内容

转载 作者:行者123 更新时间:2023-12-02 14:26:44 25 4
gpt4 key购买 nike

我正在尝试制作脚本来轻松创建基本的 pop_up,但是当我尝试将操作绑定(bind)到我创建的元素时遇到问题。

这里是代码:

button.prototype.init_action = function()
{
var i = 0;
if (this._triger.length != this._action.length)
{
console.log('Il doit y avoir autant de triger que d\'action');
return;
}
var name = '#' + this.prototype._idConteneur+'_'+this.prototype._name;
while (i < this._triger.length)
{
console.log($(name).on(this._triger[i], this._action[i]));
i++;
}
}

Button 是一个伪类。它不能从另一个对象调用 windowObject 中获取。

this._triger 是一个包含我要绑定(bind)的操作的数组。

这里:

_triger = ['click']

并且_action包含我要绑定(bind)的函数。

这里:

_action[0] = function(){console.log('HI!')}

代码运行得很好,但唯一的问题是 .on() 似乎什么也没做。当我单击创建的按钮时,没有任何反应。如果不是调用 init_action(),而是在控制台中执行相同的代码,它就可以工作(基本上:

$("#button").on(_triger[0], _action[0])

)它工作得很好。

有什么想法吗?

ps:我尝试过使用 .bind() 而不是 .on(),但它没有改变任何内容

最佳答案

请改用:http://api.jquery.com/on/

$("body").on("event","#id",function(){
...
}

关于javascript - $(#id).on() 不适用于动态创建的内容,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38181147/

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