获取javascript中id为的元素

获取javascript中id为的元素,javascript,dom,Javascript,Dom,我想得到所有带有id的输入标签。 现在,我的代码是: inputs = document.querySelectorAll('input'); for (i=0; i<inputs.length; i++) { if (inputs[i].id) { .. } } inputs=document.querySelectorAll('input'); 对于(i=0;i,您可以使用[属性名称]查找属性的存在性: inputs = document.querySelectorAll('in

我想得到所有带有id的输入标签。 现在,我的代码是:

inputs = document.querySelectorAll('input');
for (i=0; i<inputs.length; i++) {
  if (inputs[i].id) { .. }
}
inputs=document.querySelectorAll('input');

对于(i=0;i,您可以使用
[属性名称]
查找属性的存在性:

inputs = document.querySelectorAll('input[id]');

.

您可以使用
[属性名称]
查找属性的存在:

inputs = document.querySelectorAll('input[id]');
.

试试这个:

document.querySelectorAll('input[id]');
试试这个:

document.querySelectorAll('input[id]');
使用

使用

像这样的

var inputs=document.getElementsByTagName('input'),
我
l=输入。长度;
对于(i=0;i
编辑以添加:
哎呀,原来
hasAttribute
不像我想象的那样跨浏览器

“最干净”代码步骤:
  • 使用jQuery
  • $('input[id]')
  • 利润
  • 像这样的

    var inputs=document.getElementsByTagName('input'),
    我
    l=输入。长度;
    对于(i=0;i
    编辑以添加:
    哎呀,原来
    hasAttribute
    不像我想象的那样跨浏览器

    “最干净”代码步骤:
  • 使用jQuery
  • $('input[id]')
  • 利润

  • 这不是OP想要的。@patrick dw:再次阅读问题后,我意识到你是对的,我的道歉:)这不是OP想要的。@patrick dw:再次阅读问题后,我意识到你是对的,我的道歉:)这会起作用,但我认为它不符合清洁剂的资格。但我想这是主观的o) @patrick dw,说得好,我选择了“跨浏览器的东西”。是的,当我看到你的答案时,一开始我在想,但我仔细检查了一遍,发现
    hasaAttribute
    也不是跨浏览器的。因为它在
    qsa
    启动的同一个浏览器中启动(IE8)。@patrick dw,d'oh!我以为hasAttribute的存在时间比IE8长。我会更新我的答案…这会有用,但我认为它不符合清洁剂的要求。但我想这是主观的o) @patrick dw,说得好,我选择了“跨浏览器的东西”。是的,当我看到你的答案时,一开始我在想,但我仔细检查了一遍,发现
    hasaAttribute
    也不是跨浏览器的。因为它在
    qsa
    启动的同一个浏览器中启动(IE8)。@patrick dw,d'oh!我以为hasAttribute的存在时间比IE8长。我要更新我的答案…万一,OP不知道,我们可能应该指出,这是一种相对较新的方法,在很多旧浏览器或IE中不起作用,最多8 AFAIK。@Erik是的,我假设OP知道,但这是一个很好的强调点。万一,OP不知道,我们可能应该指出,这是一种相对较新的方法,在很多旧浏览器或IE中不起作用,最多8个AFAIK。@Erik是的,我认为OP已经意识到了这一点,但这是一个很好的强调点。