[英]What is the purpose of textContent in an input element?
在 DOM 中提供一个 input 元素,它确实有一个textContent
属性和value
。 众所周知,输入的值是文本框中显示的值,并且该元素不能有任何子元素,即<input>something</input>
仍然给出一个空输入,后跟一个兄弟文本节点,而关闭标签完全被忽略。 但是当我们为此输入的textContent
设置一个值时,它以某种方式在往返过程中幸存下来:
input.textContent = 'something'
console.log(input.textContent) // this works
也许这只是我,但我在这里看不到任何逻辑一致性。 在将文本内容设置为输入时出现类型错误不是很好吗?
目前的行为背后有什么原因吗?
DOM是不是HTML,但对于树结构,其与符合的API XML信息设置翻译<input>something</input>
到输入元件后跟文本节点是HTML解析器的行为,而不是的行为DOM。
实际上,如果您使用 XHTML,作为application/xhtml+xml
, <input>something</input>
将成为带有文本节点子节点的输入元素,与使用.textContent
相同。 所以.textContent
以它的方式工作是完全正常的。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.