Javascript 如何在没有jQuery的情况下启用所有禁用的表单选择选项?
我有一个带有一些select元素的HTML表单。每个元素中的一个选项最初已禁用。例如:Javascript 如何在没有jQuery的情况下启用所有禁用的表单选择选项?,javascript,html,forms,select,options,Javascript,Html,Forms,Select,Options,我有一个带有一些select元素的HTML表单。每个元素中的一个选项最初已禁用。例如: <label>Amount: <select name="amount"> <option selected value='0'>Any</option> <option value="1">100+</option> <option value="2">200+</option>
<label>Amount: <select name="amount">
<option selected value='0'>Any</option>
<option value="1">100+</option>
<option value="2">200+</option>
<option value="3">500+</option>
<option disabled value="4">Specify</option>
</select></label>
金额:
任何
100+
200+
500+
具体说明
我需要使用javascript启用它们。有没有一种不使用jQuery就针对这些元素的好方法?这将处理所有禁用的元素,而且很简单 您可以这样做:
var elems = document.querySelectorAll('[disabled]'); // target all disabled elemnts
for (var i = 0; i < elems.length; i++) {
elems[i].removeAttribute('disabled'); // enable them.
}
var elems=document.querySelectorAll('[disabled]');//目标是所有禁用的元素
对于(变量i=0;i
这将处理所有禁用的元素,并且非常简单 您可以这样做:
var elems = document.querySelectorAll('[disabled]'); // target all disabled elemnts
for (var i = 0; i < elems.length; i++) {
elems[i].removeAttribute('disabled'); // enable them.
}
var elems=document.querySelectorAll('[disabled]');//目标是所有禁用的元素
对于(变量i=0;i
JS:
var ddl = document.getElementsByTagName("select");
for (var m = 0; m < ddl.length; m++) {
for (var i = 0; i < ddl[m].length; i++) {
ddl[m].options[i].disabled = false;
}
}
var ddl=document.getElementsByTagName(“选择”);
对于(var m=0;m
.JS:
var ddl = document.getElementsByTagName("select");
for (var m = 0; m < ddl.length; m++) {
for (var i = 0; i < ddl[m].length; i++) {
ddl[m].options[i].disabled = false;
}
}
var ddl=document.getElementsByTagName(“选择”);
对于(var m=0;m
.如果要启用文档中的每个选项元素,可以执行以下操作:
var options = document.getElementsByTagName('option');
for (var i=0, iLen=options.length; i<iLen; i++) {
options[i].disabled = false;
}
如果要启用文档中的每个选项元素,可以执行以下操作:
var options = document.getElementsByTagName('option');
for (var i=0, iLen=options.length; i<iLen; i++) {
options[i].disabled = false;
}
document.querySelectorAll
非常适合现代浏览器(只需检查禁用属性)。针对较老的浏览器?是的,我注意到它只适用于现代浏览器。然后,我将为现代浏览器提供检测和使用Amit的功能,并提供类似Rob的回退功能。看,即使在IE8中也支持querySelectorAll。document。querySelectorAll
对于现代浏览器非常好(只需检查禁用属性)。针对较老的浏览器?是的,我注意到它只适用于现代浏览器。然后,我会在现代浏览器中使用Amit的功能检测和使用,在旧浏览器中使用Rob的后备功能。看,即使在IE8中也支持querySelectorAll。我有一些选择元素,而不仅仅是这个。RobG的解决方案会更好,因为这两个元素都在所有选项中循环+我有一些选择元素,而不仅仅是这一个。罗布的解决方案会更好,因为两者都在所有选项中循环+1.此功能支持率为92%。我想我会选择你的,因为它效率高。谢谢。很高兴能帮上忙“92%支持”是什么意思p此功能得到92%的支持。我想我会选择你的,因为它效率高。谢谢。很高兴能帮上忙“92%支持”是什么意思P