TypeError:stepUp调用未实现接口HTMLInputElement的对象

我有这个代码

Find/Add Horse 

当我点击一个链接时,我会进行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; }); 

但是,当我点击链接时,当我从ajax调用中删除此代码时,我收到此错误“ TypeError: 'stepUp' called on an object that does not implement interface HTMLInputElement

 data: { box_no: box_no, search_term: search_term} 

我的代码工作正常。 为什么会这样,以及如何解决这个问题? 我该如何发送数据?

如果search_term是输入字段,您可能想要获取其值。

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

现在你正在引用一个包含HTMLDom-Element的jQuery对象,但我认为你想要的是搜索输入元素中的字符串。

TypeError: stepUp当你忘记TypeError: stepUp for(id)和时,调用一个没有实现接口HTMLInputElement的对象的TypeError: stepUp 。 上课的标志。 什么时候我们可以直接获得价值。 或#符号。

错误的方法: - var email = $('PHMC_email').val();

正确的方法:

-var email = $('#PHMC_email').val(); 或者var email = $('.PHMC_email').val();