简体   繁体   English

HTML元素-是否存在“值”属性或属性?

[英]HTML Element - Does “value” attribute or property exist?

How can you determine if an html element has a "value" property/attribute? 您如何确定html元素是否具有“值”属性/属性?

Textarea example: Textarea示例:

let textarea = document.createElement("textarea");
textarea.innerHTML = "Sike!"; 
console.log(textarea.hasAttribute("value")); // returns false (expected true)
console.log(textarea.hasOwnProperty("value")); // returns false (expected true)
console.log(textarea.value); // returns "Sike!";

Div Example: Div示例:

let div = document.createElement("div");
div.innerHTML = "Sike!"; 
console.log(div.hasAttribute("value")); // returns false (expected false)
console.log(div.hasOwnProperty("value")); // returns false (expected false)
console.log(div.value); // returns undefined; (expected thrown error)

You could test if a property named 'value' exists in the (non-standard) __proto__ property of your element: 您可以测试元素的(非标准) __proto__属性中是否存在名为'value'属性:

 let textarea = document.createElement("textarea"); console.log('value' in textarea.__proto__); console.log('foo' in textarea.__proto__); 

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM