首页 > 解决方案 > ajax函数调用php函数

问题描述

我在我的一个 php 文件中定义了一个简单的 php 函数,如下所示

add_action('wp_ajax_test','test');
add_action('wp_ajax_nopriv_test','test');
function test(){
    echo "Hello";
}

我正在使用下面的 ajax 函数调用来调用“测试”函数

jQuery(document).ready(function(){ 
    jQuery('#prev_button_id').click(function(){
        jQuery.post(
            myAjax.ajaxurl,
            {
                action:"test",
                success: (response)=>{
                    console.log('Success:'+ response);
                },
                error:(response)=>{
               console.log('Failure:'+ response);
                }
        });
    });
});

我期待“Hello”的控制台输出,但我得到低于未定义的响应

Success:undefined
Failure:undefined

标签: phpjqueryajaxwordpress

解决方案


jQuery(document).ready(function(){ 
    jQuery('#prev_button_id').click(function(){

        var params =  {action:"test"}

        jQuery.post(myAjax.ajaxurl,params,function(data){
            if( data ){
                console.log ( data );
            }

        });

    });
});



add_action( 'wp_ajax_test','test' );
add_action( 'wp_ajax_nopriv_test','test' );
function test() {
    echo "Hello";
    die;
}

试试这个代码,不要忘记die在 AJAX 调用之后还要确保你得到正确的 AJAX URLmyAjax.ajaxurl


推荐阅读