jquery - document.getElementById 与 $ ("#something")

标签 jquery dom

您想解释一下两者之间的区别吗

document.getElementById("something") 

$("#something")

我正在尝试使用 ajax 上传文档,我意识到

var upl = document.getElementById('uplFile');
    console.log(upl.files);

返回一个对象但是

var upl = $('#uplFile');
    console.log(upl.files);

返回“未定义”

请解释一下差异。

最佳答案

我认为你的意思是:

document.getElementById("something")

$('#something')

第一个将返回具有指定 id 的 DOM 元素,或者 null。

第二个将返回一个 jQuery 对象,该对象要么包含具有指定 id 的 DOM 元素,要么是一个空的 jQuery 对象(长度 = 0)。

由于 jQuery 函数返回一个 jQuery 对象而不是元素,因此您必须从 jQuery 对象中获取该元素才能访问元素属性:

var upl = $('#uplFile');
console.log(upl[0].files);

关于jquery - document.getElementById 与 $ ("#something"),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12333572/

相关文章:

grails - 关于域更新的grails项目

javascript - 将 XPath 添加到 chrome 扩展或 javascript

javascript - 如何使用新创建的元素刷新 DOM

javascript - 意外 token : in jQuery ajax call

javascript - 出现错误 - TypeError : DataTable. fnDestroy 不是函数

javascript - jQuery 错误 : Invalid object initializer

java - 解析xml以查找java中的元素

java - 富脸 : Trigger event after table is rendered

reactjs - 我如何在 react.js 组件中使用 Bootstrap 5 Popover?

javascript - document.addEventListener 和 window.addEventListener 的区别?