Jquery each()对象将错误的值发布到ajaxurl

Jquery each()对象将错误的值发布到ajaxurl,jquery,ajax,each,Jquery,Ajax,Each,这是对源代码指针的改编(顺便说一句,其原始形式也以相同的方式被破坏) 我的页面上有许多div是使用下面的代码创建的。在将我的对象输出到控制台时,我可以看出它们都是正确构造的,并且每个对象中都存在所有正确的元素和ID。但不知何故,当我单击close链接时,传递到ajaxurl的是页面上的第一个索引,然后是第二个索引,以此类推。而不是指针id,它是单击并定义在下面的对象的一部分。正如我所说,控制台中的对象是完美的,具有正确的值。但发布的内容是错误的 有什么想法吗?代码如下 jQuery(docume

这是对源代码指针的改编(顺便说一句,其原始形式也以相同的方式被破坏)

我的页面上有许多div是使用下面的代码创建的。在将我的对象输出到控制台时,我可以看出它们都是正确构造的,并且每个对象中都存在所有正确的元素和ID。但不知何故,当我单击close链接时,传递到ajaxurl的是页面上的第一个索引,然后是第二个索引,以此类推。而不是
指针id
,它是单击并定义在下面的对象的一部分。正如我所说,控制台中的对象是完美的,具有正确的值。但发布的内容是错误的

有什么想法吗?代码如下

jQuery(document).ready( function($) {
    var WPHelpPointer = {$pointers};
    $.each(WPHelpPointer.pointers, function(i) {
        wp_help_pointer_open(i);
    });
    function wp_help_pointer_open(i) {
        pointer = WPHelpPointer.pointers[i];
        $( pointer.target ).pointer( 
        {
            content: pointer.options.content,
            pointer_id: pointer.options.pointer_id,
            position: 
                {
                    edge: pointer.options.position.edge,
                    align: pointer.options.position.align,
                    nudgehorizontal: pointer.options.position.nudgehorizontal,
                    nudgevertical: pointer.options.position.nudgevertical
                },
            close: function() {
                $.post(ajaxurl, 
                    {
                        pointer: pointer.pointer_id,
                        action: 'dismiss-wp-pointer'
                });
            }
        }).pointer('open');
        console.log(pointer);
        console.log(i);
    }
});

您可以尝试使用以下方法将静态对象作为
this
传递:


我看不出您在哪里定义了
ajaxurl
。这是全局变量吗?是的,对不起,这是全局定义的。它可以毫无问题地发布到。问题是正在发送的指针的值。
close: $.proxy(function () {
    $.post(ajaxurl, this);
}, {
    pointer: pointer.pointer_id,
    action: 'dismiss-wp-pointer'
})