WordPress Ajax странный принт - PullRequest
       2

WordPress Ajax странный принт

0 голосов
/ 21 декабря 2018

У меня проблема с Ajax на Wordpress.У меня есть простой выбор с кнопкой, которая имеет функцию onclick, которая работает с AJAX.Эта функция, которая вызывает файл с именем ajax-filter-system.php с простой строкой «HELLO WORLD», перезагружает содержимое div с классом «ajax-loader», печатает «HELLO WORD0» с «0» в концестрока.Не могу понять, почему ... Есть коды:

Function.php

add_action('wp_ajax_load_specialita', 'load_specialita_ajax_handler');
add_action('wp_ajax_nopriv_load_specialita', 'load_specialita_ajax_handler');
function load_specialita_ajax_handler() {
    require(get_stylesheet_directory().'/assets/ajax/ajax-filter-system.php'); 
}

ajax-filter-system.php

<div>Hello World</div>

Функция onclick (jsфайл)

function showSpecialita() {
jQuery(function($) {
    var select_target = "";
    var select_target = $('#specialita-selected').val(); // <select> ID

    var xhttp;
    $.ajax({
        url : 'https://www.mysite.it/wp-admin/admin-ajax.php', // AJAX handler
        data : { action : 'load_specialita', specialita : select_target },
        type : 'POST',
        success : function( result ){
            if( result ) {
                $('.ajax-loader-specialita').html(result);
            }
        }
    });
});
}

Если я изменю

$('.ajax-loader-specialita').html(result);  

в

$('.ajax-loader-specialita').html('Hello Word');

все будет нормально

Большое спасибо!

1 Ответ

0 голосов
/ 21 декабря 2018

Вы пропустили exit в конце функции.

add_action('wp_ajax_load_specialita', 'load_specialita_ajax_handler');
add_action('wp_ajax_nopriv_load_specialita', 'load_specialita_ajax_handler');
function load_specialita_ajax_handler() {
    require(get_stylesheet_directory().'/assets/ajax/ajax-filter-system.php'); 
    exit;
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...