gpt4 book ai didi

javascript - 传递给事件处理程序的 jQuery 参数在绑定(bind)时进行评估

转载 作者:行者123 更新时间:2023-11-28 19:54:18 25 4
gpt4 key购买 nike

我有以下代码:

var profileToRemove = null;

//...

$("#buttonRemoveProfile").on("tap", {profile : profileToRemove}, removeProfile);

//...

function removeProfile(event){
console.log(event.data);
var profile = event.data.profil;
if(profile==null || profile.name==null) {
alert("Erreur lors de la suppression du profil");
}
else { /*remove profile*/ }
}

在点击“#buttonRemoveProfile”之前,“profileToRemove”会被设置为所需的值(不为空!)。然而,我的函数removeProfile收到“null”(event.data是{profile:null})或profileToRemove的初始值。

那么如何将removeProfile的当前值传递给我的处理程序?

谢谢!

最佳答案

on() 中的 data 参数采用一个对象,并且该对象的值在绑定(bind)时被锁定,稍后更改 profileToRemove 变量不会以任何方式更新 event.data.profile(您输入的内容不正确)。

PROOF

由于您已经在更高的范围内有了一个变量,因此直接使用它似乎更容易

var profileToRemove = null;

$("#buttonRemoveProfile").on("tap", removeProfile);

//...

function removeProfile(){
if( profileToRemove === null || profileToRemove.name === null) {
alert("Erreur lors de la suppression du profil");
} else {
/*remove profile*/
}
}

关于javascript - 传递给事件处理程序的 jQuery 参数在绑定(bind)时进行评估,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22868363/

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