使用JS设置所有具有X ID的输入字段的值

时间:2019-06-26 15:41:38

标签: javascript html

我正在使用JS设置具有以下隐藏输入的多种形式。

<input type="hidden" name="sGUID" id="sGUID" value="">

使用我使用的JS函数

document.getElementById("sGUID").value = "my value goes here";

问题在于这仅将sGUID的最后一个实例设置为设置的值。我如何确保将它们全部设置为此?

4 个答案:

答案 0 :(得分:3)

使用类作为IDS必须是唯一的并遍历它们。

let guids = document.getElementsByClassName("sGUID");
let newstring = "string";
for(let z = 0;z < guids.length;z++){
   guids[z].value = newstring;
}
<input type="hidden" name="sGUID" class="sGUID" value="">
<input type="hidden" name="sGUID" class="sGUID" value="">
<input type="hidden" name="sGUID" class="sGUID" value="">
<input type="hidden" name="sGUID" class="sGUID" value="">

答案 1 :(得分:2)

您可以使用querySelectorAll并循环更改所有输入值

let inputs = document.querySelectorAll('input[name="sGUID"]');
for(let l = inputs.length;l--;){
   inputs[l].value = "my value goes here";
}

答案 2 :(得分:1)

您不能使用相同的function openDoor(){ var el = document.getElementById('img1'), is_visible = ( el.style.visibility === "visible" ); if ( is_visible ) { el.style.visibility = "hidden"; } else { el.style.visibility = "visible"; } } 值。

如果您将id作为名称值,请尝试以下操作:

sGUID
var sGUIDs = document.getElementsByName("sGUID");

for (var i = 0; i < sGUIDs.length; i++) {
    sGUIDs[i].value = "my value goes here";
}

答案 3 :(得分:1)

这实际上是对@zmag响应的重写,只是简写。

textcoord