HTML包含:
<span class="AIvhS _3MboC _2YsGM _22FXo ywmsL" data-reactid=".n.6.1:0.1:3">
<span class="_3hurI" data-reactid=".n.6.1:0.1:3.0">
<input class="_2ixY2 _1qXYA" value="" data-reactid=".n.6.1:0.1:3.0.1" autocomplete="off">
</span><span class="_1Q8WE" data-reactid=".n.6.1:0.1:3.2">*</span>
</span>
我想设置input
值。我首先要做的是通过以下方式检索input
对象:
document.getElementsByClassName("_2ixY2 _1qXYA");
不幸的是,由于某种原因,此响应返回undefinded
。为什么会发生这种情况?
答案 0 :(得分:2)
.getElementsByClassName("")返回具有该类名称的元素数组。使用document.getElementsByClassName("_2ixY2 _1qXYA")[0]
获取第一个,并使用.value
设置其值
答案 1 :(得分:1)
尝试
document.querySelector('input[class="_2ixY2 _1qXYA"]');
但是我想指出的是,不建议在react中直接查询DOM,因为这会导致React的Virtual DOM出现问题
答案 2 :(得分:0)
getElementsByClassName返回包含givven类的所有元素的数组,因此您可以像这样运行代码
var input_element = document.getElementsByClassName("_2ixY2 _1qXYA")[0];
input_element.value = 'hiii';
这是工作中的snnipet