Javascript 如何获取表单中元素的id?

Javascript 如何获取表单中元素的id?,javascript,html,Javascript,Html,我需要获取表单中某个元素的id,以便将该元素标记为“false”或“true”。或者,我需要一种方法将一个名称与一个元素关联起来,我可以在javascipt中提取该元素,这样我就可以更改关联的值 var form = document.getElementById("myForm"); form.elements[i].value 这些代码行是我尝试过的,但似乎不起作用 编辑: 函数初始值(){ if(localStorage.getItem(“run”)==null){ var form=d

我需要获取表单中某个元素的id,以便将该元素标记为“false”或“true”。或者,我需要一种方法将一个名称与一个元素关联起来,我可以在javascipt中提取该元素,这样我就可以更改关联的值

var form = document.getElementById("myForm");
form.elements[i].value
这些代码行是我尝试过的,但似乎不起作用

编辑:

函数初始值(){
if(localStorage.getItem(“run”)==null){
var form=document.getElementById(“myForm”).elements;
对于(变量i=0;i<1;i++){
var id=form.elements[i].id;
sessionStorage.setItem(id,“false”);
}
setItem(“run”,true);
}
}
因此,基本上,当我运行页面时,我需要一个本地存储项连接到屏幕上的所有按钮。我想让它运行一次,这样我就可以将所有项目设置为false。问题是我不知道如何获取ID,所以我有一个值附加到按钮。任何关于如何完成这样一项任务的想法

编辑2:

function initial(){
        if (localStorage.getItem("run") === null) {
                var form = document.getElementById("myForm");
                var tot = document.getElementById("myForm").length;

                for(var i = 0; i < tot ; i++){
                    sessionStorage.setItem(form.elements[i].id,"false");
                }
            localStorage.setItem("run", true);
        }
    }
函数初始值(){
if(localStorage.getItem(“run”)==null){
var form=document.getElementById(“myForm”);
var tot=document.getElementById(“myForm”).length;
对于(变量i=0;i
这是新代码。它似乎基本上是有效的,但由于某些原因,只有第一个值被设置为false。或者可能和这个函数有关,我不确定

 function loader(){
        var form = document.getElementById("myForm");
        var tot = 5;

        for(var i = 0; i < 5 ; i++){
            if(sessionStorage.getItem(form.elements[i].id) === "true"){
                document.getElementById(form.elements[i].id).style.backgroundColor = "green";
                return ;
            }else{
                document.getElementById(form.elements[i].id).style.backgroundColor = "red";
                return false;
            }
        }
    }
函数加载器(){
var form=document.getElementById(“myForm”);
var-tot=5;
对于(变量i=0;i<5;i++){
if(sessionStorage.getItem(form.elements[i].id)=“true”){
document.getElementById(form.elements[i].id).style.backgroundColor=“绿色”;
返回;
}否则{
document.getElementById(form.elements[i].id).style.backgroundColor=“red”;
返回false;
}
}
}

无论如何,我在执行页面时同时运行这两个命令,所以它们都设置为false并变为红色。但当按钮正确完成时,按钮的颜色变为绿色。

可通过元素上的
id
属性获得:

var id = form.elements[i].id;
越来越多

实例:

var form=document.getElementById(“myForm”);
console.log(“id为:”+form.elements[0].id)

可通过元素上的
id
属性获取:

var id = form.elements[i].id;
越来越多

实例:

var form=document.getElementById(“myForm”);
console.log(“id为:”+form.elements[0].id)

您已经在表单中存储了所有元素,因此必须:

var form = document.getElementById("myForm").elements;
var id = form[i].id;
或者从
表单
变量中删除
元素
部分,如:

var form = document.getElementById("myForm");
var id = form.elements[i].id;

您已经在表单中存储了所有元素,因此必须:

var form = document.getElementById("myForm").elements;
var id = form[i].id;
或者从
表单
变量中删除
元素
部分,如:

var form = document.getElementById("myForm");
var id = form.elements[i].id;

您希望获取id,因此请使用
.id
而不是
.value
表单.elements[i].id
等等,为什么这会被否决?不管怎样,我试过身份证的东西,但它似乎不起作用。因此,我将编辑此内容以提供更多上下文。感谢所有人的帮助。有两个正确的答案,所以我把它给了一个更好地帮助我的人。无论如何,似乎还有另一个问题,它似乎只是将第一个ID设置为false?我做错什么了吗?我不知道我应该问什么问题,所以我不知道如何处理XY问题。我很欣赏这个注释-使用localStorage的目的是让初始函数只运行一次,将“elements”设置为false,直到另一个页面上的内容完成。您想获取id,所以使用
.id
而不是
.value
表单.elements[I].id
等等,为什么会被否决?不管怎样,我试过身份证的东西,但它似乎不起作用。因此,我将编辑此内容以提供更多上下文。感谢所有人的帮助。有两个正确的答案,所以我把它给了一个更好地帮助我的人。无论如何,似乎还有另一个问题,它似乎只是将第一个ID设置为false?我做错什么了吗?我不知道我应该问什么问题,所以我不知道如何处理XY问题。我很欣赏这个注释-使用localStorage的目的是让初始函数只运行一次,以将“元素”设置为false,直到另一个页面上的内容完成。我注意到循环设置为迭代一次,并且只访问集合的第一个(零索引)元素。不确定这是故意的还是“开发”代码,如果更多的元素预计存储在
sessionStorage
中,可能会在代码的其他地方引起问题。这是故意的,我对它如何引起问题有点困惑。我不太擅长JS,你能解释一下原因吗也谢谢大家的帮助!在代码中,当执行
var form=document.getElementById(“myForm”).elements时,您已经在
form
变量中存储了所有元素。因此,当执行
form.elements[i]时,此变量并不表示表单,而是表示元素列表.id
尝试从已存储在
表单
变量中的元素列表中获取元素列表。如果只将元素存储在
0
索引中,则不需要
for
循环。有一个循环意味着你想储存更多。通常,我希望
for
循环像这样编写
for(var I=0,len=form.length;I
。因为使用了循环,所以认为会有代码试图使用