php - gettint error 400 with AJAX

So hello I'm getting error 400. Here is my PHP and JS path to file is right.PHPadd_action("wp_enqueue_scripts

So hello I'm getting error 400. Here is my PHP and JS path to file is right. PHP

add_action("wp_enqueue_scripts", "js_enqueue_search");
function js_enqueue_search(){
    wp_register_script("search", get_stylesheet_directory_uri() . "/js/search.js", "", wp_get_theme()->get("Version"), true);
    wp_enqueue_script("search");
    wp_localize_script("search","search_x", array("ajaxurl" => admin_url("admin-ajax.php")));
}

add_action("wp_ajax_nopriv_search_data", "search_data");
add_action("wp_ajax_search_data", "search_data");
function search_data(){
    echo "test";
    wp_die();
}

JS

let ajax = new XMLHttpRequest();
ajax.open("GET", search_x.ajaxurl, true);
ajax.send();

ajax.onreadystatechange = function() {
  if (this.readyState == 4 && this.status == 200) {
    console.log(this.ajax);
  }
};

So hello I'm getting error 400. Here is my PHP and JS path to file is right. PHP

add_action("wp_enqueue_scripts", "js_enqueue_search");
function js_enqueue_search(){
    wp_register_script("search", get_stylesheet_directory_uri() . "/js/search.js", "", wp_get_theme()->get("Version"), true);
    wp_enqueue_script("search");
    wp_localize_script("search","search_x", array("ajaxurl" => admin_url("admin-ajax.php")));
}

add_action("wp_ajax_nopriv_search_data", "search_data");
add_action("wp_ajax_search_data", "search_data");
function search_data(){
    echo "test";
    wp_die();
}

JS

let ajax = new XMLHttpRequest();
ajax.open("GET", search_x.ajaxurl, true);
ajax.send();

ajax.onreadystatechange = function() {
  if (this.readyState == 4 && this.status == 200) {
    console.log(this.ajax);
  }
};
Share Improve this question asked Sep 1, 2019 at 19:36 mckvakmckvak 1233 bronze badges
Add a comment  | 

1 Answer 1

Reset to default 0

i can't see the action parameter in your code

it should be:

let ajax = new XMLHttpRequest();
ajax.open("GET", search_x.ajaxurl + '?action=search_data', true);
ajax.send();

ajax.onreadystatechange = function() {
  if (this.readyState == 4 && this.status == 200) {
    console.log(this.ajax);
  }
};

see this reference about action parameter https://codex.wordpress/AJAX_in_Plugins

发布者:admin,转转请注明出处:http://www.yc00.com/questions/1745194719a4616034.html

相关推荐

  • php - gettint error 400 with AJAX

    So hello I'm getting error 400. Here is my PHP and JS path to file is right.PHPadd_action("wp_enqueue_scripts

    1小时前
    20

发表回复

评论列表(0条)

  • 暂无评论

联系我们

400-800-8888

在线咨询: QQ交谈

邮件:admin@example.com

工作时间:周一至周五,9:30-18:30,节假日休息

关注微信