Подтвердить что ты не робот

TypeError: stepUp вызывает объект, который не реализует интерфейс HTMLInputElement

У меня есть этот код

<a data-remote="true" data-box_no="1" class="find_or_add_horse" href="#">Find/Add Horse</a>

И я делаю вызов ajax, когда я нажимаю на ссылку

$(document).on('click', '.find_or_add_horse', function () {
        var search_term = $(this).parents('.sub-middle-column').find('.search_horse');
        var box_no = $(this).data('box_no');


        $.ajax({
            url: "/startup_wizard/find_horse",
            dataType: 'script',
            type: 'GET',
            data: { box_no: box_no, search_term: search_term}
        });
        return false;


    });

Но когда я нажимаю на ссылку, я получаю эту ошибку "TypeError: 'stepUp' called on an object that does not implement interface HTMLInputElement", когда я удаляю этот код из ajax-вызова

data: { box_no: box_no, search_term: search_term}

мой код просто отлично работает. Почему это происходит и как это исправить? Как я могу отправить данные?

4b9b3361

Ответ 1

Если search_term - это поле ввода, вы можете получить его значение.

var search_term = $(this).parents('.sub-middle-column').find('.search_horse').val();

Прямо сейчас вы ссылаетесь на объект jQuery, содержащий элемент HTMLDom, но я думаю, что вы хотите, это строка внутри элемента ввода поиска.

Ответ 2

TypeError: stepUp вызывает объект, который не реализует интерфейс. HTMLInputElement возникает, когда вы забыли # sign для (id) и. знак для класса. когда мы можем получить стоимость напрямую. или # знак.

Неправильный метод: - var email = $('PHMC_email').val();

Правильный метод:

-var email = $('#PHMC_email').val(); Или var email = $('.PHMC_email').val();