繁体   English   中英

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

[英]How to pass an object as parameter to an onClick function using Jquery

我有一个需要传递给函数的对象,该函数是通过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()绑定事件处理程序。 由于关闭,可以在事件处理程序中访问对象myObj

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

一本好书JavaScript闭包如何工作?

此代码说明了如何使用jQuery将数据发送到处理程序

$('yourElement').click(yourData, function(eventObject){
    var thisIsYourData = eventObject.data;
})

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM