Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/377.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何获取当前htmlSelectElements id_Javascript_Html - Fatal编程技术网

Javascript 如何获取当前htmlSelectElements id

Javascript 如何获取当前htmlSelectElements id,javascript,html,Javascript,Html,嗨,我一直在尝试获取我正在循环的当前元素的id,但我不确定为什么这不起作用。非常感谢您的帮助 代码: var arr=document.getElementsByClassName(“myclass”); 对于(i=0;i

嗨,我一直在尝试获取我正在循环的当前元素的id,但我不确定为什么这不起作用。非常感谢您的帮助

代码:

var arr=document.getElementsByClassName(“myclass”);
对于(i=0;i

我无法从我的arr[I]位置获取id,即使它是一个元素。

arr[I]
是一个元素,而不是jQuery对象。您可以使用
arr[i]直接访问
id
属性。id

arr[i]
是一个元素,而不是jQuery对象。您可以使用
arr[i].id直接访问
id
属性;
var arr = document.getElementsByClassName("myclass");
for (i = 0; i < arr.length; i++) {
    var key = "";
    var value = "";
    if (arr[i].nodeName == "INPUT" || arr[i].nodeName == "TEXTAREA") {
        value = arr[i].value;
    }
    else if (arr[i].nodeName == "SELECT" && arr[i].id == "multiple") {
        alert("worked");
        value = "multi";
    }
    else if (arr[i].nodeName == "SELECT" && arr[i].id != "multiple") {
        alert("ddint work");
        value = "not multi";
    }
    key = arr[i].name;
}​
对于(i=0;i
.attr(“id”)是一个jquery函数。javascript等价物是.id

此外,您还可以将键变量赋值移到if语句之外,因为无论if语句如何,您都可以将其赋值。

var arr=document.getElementsByClassName(“myclass”);
对于(i=0;i
.attr(“id”)是一个jquery函数。javascript等价物是.id


此外,您还可以将键变量赋值移到if语句之外,因为无论if语句如何,都可以进行赋值。

不建议在节点上使用.id。不建议在节点上使用.id。使用.getAttribute.

它不仅检查
id
属性?我检查id属性是什么意思?
getElementsByClassName
不返回jQuery对象数组。而且,它甚至不存在于旧版本的IE中,只是一个提示。@arrowill12:
arr[i].id
将为您提供id—这就是您所需要的。DOMt节点没有
attr
方法。它不仅检查
id
属性?我检查id属性是什么意思?
getElementsByClassName
不会返回jQuery对象数组。此外,它甚至不存在于旧版本的IE中,只是一个提示。@arrowill12:
arr[i].id
将为您提供id-这就是您所需要的。DOMt节点没有
attr
方法。
var arr = document.getElementsByClassName("myclass");
for (i = 0; i < arr.length; i++) {
    var key = "";
    var value = "";
    if (arr[i].nodeName == "INPUT" || arr[i].nodeName == "TEXTAREA") {
        value = arr[i].value;
    }
    else if (arr[i].nodeName == "SELECT" && arr[i].id == "multiple") {
        alert("worked");
        value = "multi";
    }
    else if (arr[i].nodeName == "SELECT" && arr[i].id != "multiple") {
        alert("ddint work");
        value = "not multi";
    }
    key = arr[i].name;
}​