在浏览器中使用javascript按类设置html输入元素的值?
我需要基于类(class=“Qty”)设置一组输入框的值 如果我使用ElementID,这是有效的在浏览器中使用javascript按类设置html输入元素的值?,javascript,html,Javascript,Html,我需要基于类(class=“Qty”)设置一组输入框的值 如果我使用ElementID,这是有效的 document.getElementById('G_Qty_0').value='101' 但这不起作用 document.getElementsByClassName('Qty').value='100' 有什么好处 干杯 document.getElementsByClassName返回一个节点列表,而不是单个元素。您可以循环浏览列表,例如: var list = document.ge
document.getElementById('G_Qty_0').value='101'
但这不起作用
document.getElementsByClassName('Qty').value='100'
有什么好处
干杯
document.getElementsByClassName
返回一个节点列表,而不是单个元素。您可以循环浏览列表,例如:
var list = document.getElementsByClassName('Qty');
var n;
for (n = 0; n < list.length; ++n) {
list[n].value='100';
}
您还可以查看querySelector
和queryselectoral
,因为它们实际上比getElementsByClassName
更受支持(特别是:IE8支持它们,但没有getElementsByClassName
)querySelector
查找文档中与给定CSS选择器匹配的第一个元素,并返回该元素实例(如果没有,则返回null
)querySelectorAll
返回所有匹配元素的NodeList
。(该NodeList
与getElementsByClassName
返回的不完全相同,因为它是您进行调用时的快照,而不是活动的NodeList
)
例如:
document.querySelector('.Qty').value = '100';
或:
var list=document.querySelectorAll('.Qty');
var n;
对于(n=0;n
@MaxHodges-一个简单的提醒,如果它用s表示getElements
,它总是一个节点列表。@adeneo是的,我理解,只是不知道如何循环。我在浏览器控制台中执行此操作,并认为理论上可以做到,但我的JavaScript知识仍然很薄弱。
document.querySelector('.Qty').value = '100';
var list = document.querySelectorAll('.Qty');
var n;
for (n = 0; n < list.length; ++n) {
list[n].value='100';
}