草庐IT

javascript - TypeError getElementsByTagName 不是函数问题

coder 2024-07-21 原文

我无法找到问题的根源。基本上,我在控制台中收到的错误消息是:

TypeError: $(...).getElementsByTagName is not a function

当我点击它所在的行时,它就在这里:

var inputs = $('directoryresults').getElementsByTagName('input');

我不确定为什么会这样,因为我在页面本身的 header 中包含了 jQuery:

<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js"></script>
<script src="http://ajax.googleapis.com/ajax/libs/jqueryui/1.11.0/jquery-ui.min.js"></script>

有人知道是什么原因造成的吗?

最佳答案

Does anyone have any ideas what might be causing this?

jQuery 构造函数返回的对象没有 .getElementsByTagName() 方法。


$('selector') 返回一个 jQuery 对象。 .getElementsByTagName() 是 DOM 元素的原生 JavaScript 方法。

使用您当前拥有的 jQuery 对象查找具有特定标记名的元素:

var inputs = $('directoryresults input');
// OR
var inputs = $('directoryresults').find('input');

要获得 .getElementsByTagName() 将返回的类似节点列表(请注意,这并不完全相同,这将返回一个数组,其中 .getElementsByTagName() 将返回 HTMLCollection ):

var inputs = $('directoryresults input').get();

注意:我假设 directoryresults 是 DOM 元素的类或 ID。无论哪种方式,您都需要修改上面的选择器

关于javascript - TypeError getElementsByTagName 不是函数问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26848368/

有关javascript - TypeError getElementsByTagName 不是函数问题的更多相关文章

随机推荐