如何在不使用jQuery的情况下禁用所有输入按钮?

时间:2009-07-29 18:17:01

标签: javascript dom

如果没有jQuery,我该怎么做?

$('input[type=submit]').attr('disabled',true);

它不一定是跨浏览器兼容的;只适用于Firefox的解决方案是可以的。

4 个答案:

答案 0 :(得分:37)

var inputs = document.getElementsByTagName("INPUT");
for (var i = 0; i < inputs.length; i++) {
    if (inputs[i].type === 'submit') {
        inputs[i].disabled = true;
    }
}

答案 1 :(得分:4)

你试过吗

document.getElementsByTagName("input");

然后您可以询问DOM以找到您的提交按钮。 getElementsByTagName reference

完整样本

window.onload = function(e) {
    var forms = document.getElementsByTagName('form');
    for (var i = 0; i < forms.length; i++) {
        var input = forms[i].getElementsByTagName('input');
        for (var y = 0; y < input.length; y++) {
            if (input[y].type == 'submit') {
                input[y].disabled = 'disabled';
            }
        }

    }
}

答案 2 :(得分:1)

var els = document.getElementsByTagName ( 'input' );
for ( var i = 0; i < els.length ; i ++ ) {
 if ( els[i].type == 'submit' ) els[i].setAttribute('disabled', 'true'); 
}

答案 3 :(得分:1)

这是未经测试的,但它或类似的东西应该有效。通过错误和功能检查可以做得更好。

var inputs = document.getElementsByTagName('input');

for(var i = 0; i < inputs.length; i++){
  if(inputs[i].type == 'submit'){
    inputs[i].disabled = 'disabled';
  }
}