使用相同 ID 或名称插入多个文本字段 [已关闭]

Multiple insert text field with the same ID or Name [closed]

提问人:iso ayu 提问时间:9/7/2023 最后编辑:pilchardiso ayu 更新时间:9/7/2023 访问量:26

问:


想改进这个问题吗?通过编辑这篇文章添加详细信息并澄清问题。

2个月前关闭。

我想按 ID 或名称插入多个表单。所以我尝试它不起作用,我尝试成为一个错误,因为在一种形式中具有相同的 ID。var txt_bw = document.getElementsByName('before_wash').value;var txt_bw = document.getElementById('before_wash').value;

谢谢!

我已经使用过了,但它根本不起作用。document.getElementsByNamedocument.getElementsByIddocument.getElementsByClassName

JavaScript的

评论

0赞 pilchard 9/7/2023
id 在 DOM 中必须是唯一的。如果需要多个,请使用 .class
0赞 iso ayu 9/7/2023
嗨,@pilchard感谢您回答我的问题。是的,没错,我已经有唯一的 ID。但是当文本框循环时,id 是错误的,因为重复
1赞 pilchard 9/7/2023
目前还不清楚你想实现什么。提供一个最小的可重现示例,包括您的 HTML 示例以及您尝试过的实际 js。

答:

0赞 Alin 9/7/2023 #1

元素 ID 在整个文档中应该是唯一的,但您可以为表单重复使用相同的名称。

由于您已经使用了 getElementByName,我认为您仍然可以尝试像这样使用它:

var elements = document.getElementsByName('before_wash');
var values = [];
for (var i = 0; i < elements.length; i++) {
    values.push(elements[i].value);
}
console.log(values);

您也可以尝试 document.querySelectorAll

document.querySelectorAll('[name="before_wash"]');

评论

0赞 iso ayu 9/8/2023
嗨@Alin谢谢你回答我的问题。我已经尝试过了,但仍然不起作用。只是可以工作,但是当我输入第二个字段时,结果没有显示getElementById