-2

如何获取所有控件(单选按钮、选择、文本字段等)并将其状态设置为启用?

4

2 回答 2

2

使用 Prototype.js:

$$(":input").each(function (el) {
   el.enable();
});​

演示

于 2012-08-28T15:13:13.983 回答
0

如果您不关心旧版浏览器,可以使用:

(function (slice) {
    "use strict";
    var elems;

    //select the elements
    elems = document.querySelectorAll('button, input, select, textarea');

    //cast to an array
    elems = slice.call(elems); 

    //iterate over the array
    elems.forEach(function (el) {
        //enable each element
        el.disabled = false;
    });
}(Array.prototype.slice));

否则,您将需要使用document.getElementsByTagName并遍历每个标签:

(function (slice) {
    "use strict";
    var elems,
        elem,
        i,
        l;
    function getElemArr(tag) {
        var els;
        //get the elements
        els = document.getElementsByTagName(tag);
        //cast to array
        els = slice.call(els);
        return els;
    }
    //select each type
    elems = [].concat(
        getElemArr('button'),
        getElemArr('input'),
        getElemArr('select'),
        getElemArr('textarea')
    );
    //loop over every element
    for (i = 0, l = elems.length; i < l; i += 1) {
        elem = elems[i];
        elem.disabled = false;
    }
}(Array.prototype.slice));
于 2012-08-28T15:14:15.240 回答