Wordpress Ajax 根本不在 widget 中调用 js



所以我正在尝试通过我的小部件上的wordpress运行AJAX;使用以下方法:

黎明标签小部件.php:(我的主要小部件的文件)

class dawn_tab_widget { 
    ... // referring to irrelevant functions in the class
    function tab_ajax_result() { 
        echo 'helloworld';
        die();
    }     
}
wp_enqueue_script( 'tab-ajax', get_template_directory_uri() . '/assets/js/tab-ajax.js', array( 'jquery' ), false, true );
wp_localize_script( 'tab-ajax', 'ajaxObject', array( 'ajaxurl' => admin_url( 'admin-ajax.php' ) ) ); 
add_action('wp_ajax_tab_ajax', 'tab_ajax_result');
add_action('wp_ajax_nopriv_tab', 'tab_ajax_result');

tab-ajax.js (in/template/assets/js/)

jQuery(document).ready(function($) {
    alert("Loading Page");
    var data = { action: 'tab_ajax_script' },
    $.post(ajaxObject.ajaxurl, data, function(response) {
        if(response.length > 2) {
            alert("loaded");
        }
    });
})

它根本不起作用,我什至没有收到"加载"警报。为什么会这样?

add_action('wp_ajax_tab_ajax', 'tab_ajax_result');将不起作用,因为函数tab_ajax_result在类内。 请阅读有关在类内函数时添加操作的更多信息。

相关内容

最新更新