2009-06-15 77 views
13

我有followng代码:获取元素在JavaScript

var inputs = document.getElementsByTagName("input"); 
for (var i = 0; i < inputs.length; i++) { 
inputs[i].disabled = bDisabled; 
} 

我现在需要一些逻辑添加到只禁止有和形式的编号输入“围脖*”,其中围兜可以是任何角色。我见过其他问题,这是用jQuery完成,但我不能使用jQuery只是简单的JavaScript。任何帮助,将不胜感激。

谢谢

+2

更精确。 “围脖”可以是任何角色?你的意思是*可以是任何角色?让bibo比赛但参考书目没有? – 2009-06-15 23:06:49

+0

你可以使用CSS样式属性选择器吗?我想document.getElementsByTagName('[id^= bib]');会工作。 – Eytan 2012-10-18 16:43:59

回答

17

这是非常基本的东西。

var inputs = document.getElementsByTagName("input"); 
for (var i = 0; i < inputs.length; i++) { 
    if(inputs[i].id.indexOf("bib") == 0) 
    inputs[i].disabled = bDisabled; 
} 
+0

而不是每次循环遍历它们...将数组中的元素缓存起来,以便下一个循环更快。 – TJR 2009-06-16 02:11:55

2
function CheckDynamicValue(partialid, value) { 

    var re = new RegExp(partialid, 'g'); 
    var elems = document.getElementsByTagName('*'), i = 0, el; 
    while (el = elems[i++]) { 
     if (el.id.match(re)) { 
      el.disabled = value; 
     } 
    } 
} 
0

我还没有尝试过这个自己,但将CSS样式属性选择?

document.getElementsByTagName('[id^=bib]');