gpt4 book ai didi

javascript - 在 jQuery 中,如果我不能使用 'this' ,如何从属性中获取 id ?

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

感谢您查看我的问题,问题如下:

我正在使用名为 Inline inline affirm 的 jQuery 插件基本上只是要求用户确认(是或否)他们正在执行的操作。

这是插件的基本用法:

HTML:

<li class="msg-li-delete" data-msgid="<?php echo $msg_id_att; ?>">
<div class="affirm light"
data-id="<?php echo $msg_id_att; ?>"
data-title="delete"
data-question="are you sure?" style="display:inline-block;"></div></li>

JS:

$(".affirm").inlineAffirm({
callback : function(ele){
var msg_id_conf = $(".affirm").attr("data-id");
delete_private_msg(msg_id_conf);
}
});

问题是我试图从 anchor 标记中获取唯一的 id,以便我可以调用 delete_private_msg 函数并将 id 作为参数,即 delete_private_msg 函数将与 PHP 进行一些 ajax 交互来删除消息。

无论我点击哪个 anchor ,删除的项目始终是第一个。

所以我尝试了这个:

  $(".affirm").inlineAffirm({
var thisid = $(this).attr("data-id");
callback : function(ele){
var msg_id_conf = thisid;
delete_private_msg(msg_id_conf);
}
});

但是我在控制台中收到以下错误:

126 Uncaught SyntaxError: Unexpected identifier

对此的任何帮助将不胜感激,我真的希望这是可以理解的。

最佳答案

不确定它是否有效,但如果在 onclick 处理程序中调用回调,那么这应该有效

$(".affirm").inlineAffirm({
callback : (ele) => {
var msg_id_conf = $(this).attr("data-id");
delete_private_msg(msg_id_conf);
}
});

注意:这是 ES6 功能

关于javascript - 在 jQuery 中,如果我不能使用 'this' ,如何从属性中获取 id ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42657601/

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