Javascript 给出input.value和input.textContent之间的差异。为什么用一个代替另一个?
为什么使用input.value而不是input.textContent。两者的区别是什么 例如,如果我想从输入框中检索内容Javascript 给出input.value和input.textContent之间的差异。为什么用一个代替另一个?,javascript,dom,Javascript,Dom,为什么使用input.value而不是input.textContent。两者的区别是什么 例如,如果我想从输入框中检索内容 <input type="number"> 而不是这个 input.textContent 只是想对每一个都有更清楚的了解。来自: […]textContent返回每个子节点的textContent的串联,不包括注释和处理指令。如果节点没有子节点,则此字符串为空 本质上,textContent为您提供了节点所包含内容的文本表示。可以将其视为介于开始和结束标
<input type="number">
而不是这个
input.textContent
只是想对每一个都有更清楚的了解。来自:
[…]textContent
返回每个子节点的textContent
的串联,不包括注释和处理指令。如果节点没有子节点,则此字符串为空
本质上,textContent
为您提供了节点所包含内容的文本表示。可以将其视为介于开始和结束标记之间的所有内容,例如
console.log(document.querySelector('span').textContent)代码>
此文本而非此文本
只有输入元素有“值”。它表示由用户提供或最初由代码提供的输入数据。而textContent属性设置或返回指定节点及其所有子节点的文本内容
textContent返回每个子节点的textContent的串联,不包括注释和处理指令,如果节点没有子节点,则textContent将为空字符串。input.value
用于表单元素获取表单元素的值input.textContent
用于其他元素获取元素的内容。@codeherk的可能重复项如何重复,您添加的链接询问“Value”是否仅用于操作输入类型控件的文本内容”,我要求更清楚地理解value和textContent之间的区别。textContent
基本上获取节点的所有文本子节点。每个元素节点都具有此属性。可以将其视为在开始标记和结束标记之间随意获取文本(即此文本
)。但它只适用于具有子元素的元素。输入元素节点没有子节点。如果您考虑HTML,它是有意义的:
。开始标记和结束标记之间没有文本(因为没有结束标记[技术上也没有开始标记]),因此没有textContent
,但有一个值
属性。这很有意义。谢谢@Felix Kling
input.textContent