【问题标题】:My JQuery Plugin Appends "0" to the body element我的 JQuery 插件将“0”附加到正文元素
【发布时间】:2016-01-04 12:18:36
【问题描述】:

我创建了一个小型 JQuery 插件,并使用厚框弹出窗口。
我不知道它来自哪里,但我在 body 元素的末尾附加了一个“0”。
我怀疑其中一个输出可能是成功指标?

有人熟悉这种行为吗?

编辑:

PHP

add_action('wp_ajax_product_picker', 'popup_content');
function popup_content() {
    iframe_header();
    echo 'aaa';
    iframe_footer();
}

JS

var currentPicker = {};

(function ($) {

    $.fn.pick_product = function (options) {
        var settings = $.extend({
            callback: function(){}
            }, options);
        this.on('click',function () {
            var url = product_picker.ajax_url + "?action=product_picker&TB_iframe=true&width=600&height=550";
            tb_show("My Caption", url);
        });
    return this;
    };
}(jQuery));

jQuery(function ($) {
    $('#test-product-picker').pick_product({
        callback: function (variation_id, size) {
            alert('aaa');
        }
    });
});

【问题讨论】:

  • 如果没有看到您的代码,我们将无法帮助您。
  • 从您的插件代码中删除 0。
  • 那么你的插件代码在哪里?
  • 当 WP Ajax 返回 0 表示他没有找到该函数。 codex.wordpress.org/Plugin_API/Action_Reference/…
  • 感谢 Adeel,我已经得到了答案。

标签: javascript jquery wordpress popupwindow thickbox


【解决方案1】:

如果您在网站的前端使用它,则必须使用

wp_ajax_nopriv_product_picker 并将die() 放在你的函数之后。

function popup_content() { iframe_header(); echo 'aaa'; iframe_footer(); die(); }

【讨论】:

  • 非常感谢我需要 die() 函数。就是这么简单。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-05-24
  • 1970-01-01
  • 1970-01-01
  • 2014-03-19
  • 2012-09-19
  • 2014-02-14
相关资源
最近更新 更多