colorbox:发送带有post数据的数据属性

colorbox: send data-attr with post data

本文关键字:post 数据 数据属性 colorbox      更新时间:2023-09-26

我正在为选择器中具有data-myid属性的每个链接打开一个颜色框(AJAX页面),并且我喜欢将data-myid属性值与post请求一起发送,以返回正确的页面。

$(".gallery-media-cover a[data-myid]").colorbox({
    href: 'ajax/view//image',
    data: {
        myid: $(this).attr("data-myid"),
    },
});

当我只写:myid: 123时,它是有效的,但它们是动态的,所以我需要从链接中获取它们。每当我尝试时,当我使用$(this).attr("data-myid") 时,myid都会被发布为未定义

我真的尝试了任何可能的方法来获取url的数据属性,并将其与我的请求一起发送,但似乎都不起作用。我百分之百肯定data-myid在链接中。

还有

myid: function() {
    return $(this).attr("data-myid");
}

$(this).data("id")

保持未定义,我在这里真的没有选择。有人能分享一下吗?

在您提供给colourbox()方法的对象的上下文中,this不引用单击的链接。为了实现您的要求,您可以在每个链接上循环并单独实例化颜色框:

$(".gallery-media-cover a[data-myid]").each(function() {
    var $el = $(this);
    $el.colorbox({
        href: 'ajax/view//image',
        data: {
            myid: $el.data('myid'),
        },
    });
});