gpt4 book ai didi

javascript - 在动态创建的元素中带有参数的事件处理程序

转载 作者:行者123 更新时间:2023-11-30 07:02:47 25 4
gpt4 key购买 nike

当我分配没有参数的事件处理程序时,它起作用了:http://jsfiddle.net/mUj43/

function show(){
alert('work');
}

var myButton = document.createElement("input");
myButton.type="button";
myButton.value="click";
myButton.onclick=show;

var where = document.getElementById("where");
where.appendChild(myButton); ​

但是如果我传递参数,它就不起作用:http://jsfiddle.net/mUj43/1/

myButton.onclick = show('test');

如何在动态创建的元素中使用带参数的函数?

最佳答案

你不能那样做,你可以通过创建一个新函数来使用部分应用程序,然后将其附加为事件处理程序:

myButton.onclick=show.bind( myButton, 'test');

http://jsfiddle.net/mUj43/2/

文档(我建议您阅读,因为此功能对许多其他事情也很有用)和兼容性信息:https://developer.mozilla.org/en-US/docs/JavaScript/Reference/Global_Objects/Function/bind

关于javascript - 在动态创建的元素中带有参数的事件处理程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12027517/

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