Как заполнить раскрывающийся список на основе результата другого раскрывающегося списка ajax в файле шаблона в Wordpress - PullRequest
0 голосов
/ 24 апреля 2020

У меня есть 3 раскрывающихся списка в форме и в зависимости от выбора пользователя, первое из которых будут загружаться значения из второго. Итак, я пытаюсь заполнить раскрывающийся список на основе другого отклика раскрывающегося списка. И я получаю ошибку здесь (5, пожалуйста, смотрите код ниже); Как я могу решить это?

Код работает на WordPress, теме «Двадцать двадцать», как файл шаблона, но если я изменю тему, он не будет работать

jQuery('#select_brand').on('change', function() { // occurs when the value of an element has been changed
    var brand = $(this).val();
    $('#models_select').html('<option>Select Model:</option>');
    $.ajax({
      url: '<?php echo get_bloginfo("template_url"); ?>/get_models_brand.php',
      type: 'POST',
        data: 'brand=' + brand,
      success: function(json) { 
        var models = JSON.parse(json); // (5)
            for(var i = 0; i < models.length; i++) {
                $('#models_select').append('<option value="' + models[i].bModel + ' ">' + models[i].bModel + '</option>')
            }
      }
    });
});

get_models_brand . php выглядит так:

$brand = $_POST['brand'];

$models = $wpdb->get_results('SELECT bModel FROM dr_vdb WHERE bBrand = "' . $brand . '"');

echo json_encode($models);

Тогда я получаю эту ошибку:

Uncaught SyntaxError: Unexpected token < in JSON at position 0
    at JSON.parse (<anonymous>)
    at Function.n.parseJSON (jquery.min.js:4)
    at Object.success ((index):228)
    at i (jquery.min.js:2)
    at Object.fireWith [as resolveWith] (jquery.min.js:2)
    at y (jquery.min.js:4)
    at XMLHttpRequest.c (jquery.min.js:4)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...