簡體   English   中英

我無法使用ajax在WordPress中從JS到PHP獲取$ _POST

[英]I cant get $_POST from js to php in wordpress with ajax

我的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");
      });

和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();
}

此過程成功,並且我獲得window.alert(data),但數據為空。 你能告訴我為什么它不包括“回聲”嗎? (此腳本是我正在嘗試的東西。)

您需要像這樣在php函數上回顯一些數據

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

什么都沒有回顯,並且由於您在echo 'echo';之前退出而使頁面空白echo 'echo'; ,您的代碼應為

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';
    }else{
      $field1='heye';
    }
    echo 'echo';
    die();
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM