当前位置 : 主页 > 网络编程 > 其它编程 >

关于div获取value值得问题,望大神指点!非常感谢。

来源:互联网 收集:自由互联 发布时间:2023-07-02
!DOCTYPEhtmlhtmlheadmetacharsetutf-8titledem 如上代码所示,有点不明白同样是Element.value的获取方式,为什么前者获取不到,之前理解 div元素本身并没有value这个属性,而你在你在里面添加value值
!DOCTYPEhtmlhtmlheadmetacharsetutf-8titledem 如上代码所示,有点不明白同样是Element.value的获取方式,为什么前者获取不到,之前理解 div元素本身并没有value这个属性,而你在你在里面添加value值这个是用户定义的属性, 用户定义的属性不能通过.value的方式获取,而如果是元素本身的属性value,则可以通过.value的 方式获取[b][/b] 如果真是这样,下面的代码应该也获取不到才是,换一种方式理解,动态生成的元素是js引擎存在内存中的对象,div.value择是读取内存中的对象value值,并非页面中元素的值,但是结果console.log(document.getElementById("div2").value); 也可以输出,瞬间不知道怎么理解了。望大神指点一下这个问题。小弟不胜感激!

4 个解决方案

#1

HTMLElement的attribute和其对应的DOM对象的property的区别

#2

DOM元素的属性分两类,atrribute和property attribute翻译成中文术语为“特性”,property翻译成中文术语为“属性” 在html标签上设置的都是attribute。 在js代码中div.value="12345";这样设置的都是property。 在js代码中用div.value获取的也都是property。 想要在js代码中获取attribute要用div.getAttribute("value") 对于很多DOM元素固有的attribute都还有一个相对应的property。比如div元素的id和class既是attribute,也有对应的property,不管使用哪种方法都可以访问和修改。 但是对于DOM元素中自定义的attribute就没有相对应的property了,只能用div.getAttribute("value")获取,不能用div.value获取。

#3

div没有value只能用attribute获取,用jquery就是$("div").attr("value");

#4

2楼正解。已经采纳!
网友评论