我不能从带有ajax的wordpress中的js到php获得$ _POST

HAY*_*IBA 1 javascript php ajax wordpress

我的js文件在这里.

      function sayHelloWorld() {
window.alert('hey');
       $.ajax({
         url: 'admin-ajax.php',//I wrote absolute path here.
         type:'POST',
         data: { 
                'action': "mon_action",
                'newFormRecherche': 'newFormRecherche'
            },
        timeout:10000,
        }).done(function(data) {
            window.alert(data);
        }).fail(function(XMLHttpRequest, textStatus, errorThrown) {
            window.alert("error");
      });
Run Code Online (Sandbox Code Playgroud)

和functions.php就在这里.

add_action( 'wp_ajax_mon_action', 'mon_action' );
add_action( 'wp_ajax_nopriv_mon_action', 'mon_action' );

function mon_action() {

    if (isset($_POST["newFormRecherche"])) {
      $field1='hey';
        exit();
    }else{
      $field1='heye';
        exit();
    }
    echo 'echo';
    die();
}
Run Code Online (Sandbox Code Playgroud)

这个过程成功,我得到window.alert(数据),但数据是空的.你能告诉我为什么这不包括'回声'吗?(这个脚本是我正在尝试的东西.)

Pri*_*iya 7

你需要像这样在php函数上回显一些数据

if (isset($_POST["newFormRecherche"])) {
      $field1='hey';
      echo 'if';
        exit();
    }else{
      $field1='heye';
echo 'else';
        exit();
    }
    echo 'echo';
    die();
Run Code Online (Sandbox Code Playgroud)