gpt4 book ai didi

javascript - 如何使用 Jquery 将对象作为参数传递给 onClick 函数

转载 作者:行者123 更新时间:2023-11-28 14:38:42 25 4
gpt4 key购买 nike

我有一个需要传递给函数的对象,该函数是通过 onClickonKeyUp() 触发的,但我无法使其工作。
虽然我可以向它传递值。

function myFunc(myObj) {

$("<button type="button" onclick='otherFunction( $(\"#elem\").val() )'
onkeyup='otherFunction( $(\"#elem\").val() )'> CLICK IT </button>"
}

如您所见,我有一个 otherFunction 并且我可以将 $("#elem").val() 作为参数传递。但我还需要将 myObj 传递给它。
尝试了我能想到的一切,但我无法让它发挥作用。

Obs:myObj 是来自 googleMaps 的标记,因此我不能只传递它的属性值。我需要访问第二个函数的完整对象。 因为我需要做类似的事情: myObj.setOptions(.....)

最佳答案

当您使用 jQuery 创建按钮时,请使用 .on() 绑定(bind)事件处理程序。由于 closure,对象 myObj 将在事件处理程序中可访问。

function myFunc(myObj) {
var button = $('<button>', {
"type": "button",
"text": "CLICK IT"
}).on('click keyup', function () {
// myObj will be accessible here
otherFunction($("#elem").val());
});
}

一本好书How do JavaScript closures work?

关于javascript - 如何使用 Jquery 将对象作为参数传递给 onClick 函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48905680/

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