尝试 GetElementsByClassName [关闭]

Posted

技术标签:

【中文标题】尝试 GetElementsByClassName [关闭]【英文标题】:Try GetElementsByClassName [closed] 【发布时间】:2020-12-30 17:39:04 【问题描述】:

尝试 js ref_doc_getelementsbyClassName

“未捕获的类型错误:无法设置属性‘值’为空”

这个HTML代码

<input type="text" class="form-control" class="test"  />

这个JS代码

function inputtest() 
  document.getElementsByClassName('test').value = selectedControl;

【问题讨论】:

document.getElementsByClassName('test') 更改为 document.getElementsByClassName('test')[0] 因为选择类名返回数组 您不能在一个input 中定义两种类类型。 - 添加与form-control 具有相同类的test - 像这样=> class="form-control test" getElementsByClassName 给出一个数组而不是一个对象。试试document.getElementsByClassName('test') &amp;&amp; document.getElementsByClassName('test')[0].value = selectedControl 我试试这个,但还是一样的 .. document.getElementsByClassName('test') && document.getElementsByClassName('test')[0].value = selectedControl 好的,首先要合并你的类,如class="form-control test",并使用CSS选择器,如querySelector('.test').value = selectedControl,但这document.getElementsByClassName('test')[0].value = selectedControl似乎可以工作 【参考方案1】:

更改您的 html

<input type="text" class="form-control test"  />

JS

function inputtest() 
  document.getElementsByClassName('test')[0].value = selectedControl;

【讨论】:

它无法正常工作 好的。我很抱歉。不过刚才看到评论区知道你的问题已经解决了 别担心..谢谢 所以它对你有用吗? Yesssss,工作:)

以上是关于尝试 GetElementsByClassName [关闭]的主要内容,如果未能解决你的问题,请参考以下文章

javascript document.getElementsByClassName 与 IE 的兼容性

打字稿中的 document.getElementById(s).document.getElementsByClassName 错误

javascript与getElementsByClassName或querySelector有关

getElementsByClassName() 有两个类

getElementsByClassName( )方法

IE8 兼容 getElementsByClassName