如何使用javascript从HTML输入中删除“禁用”属性?
<input id="edit" disabled>
在onClick上我希望我的输入标签不包含“禁用”属性。
答案 0 :(得分:158)
将元素的disabled
属性设置为false:
document.getElementById('my-input-id').disabled = false;
如果你正在使用jQuery,那么等效的是:
$('#my-input-id').prop('disabled', false);
对于多个输入字段,您可以通过类访问它们:
var inputs = document.getElementsByClassName('my-input-class');
for(var i = 0; i < inputs.length; i++) {
inputs[i].disabled = false;
}
例如,document
可以替换为表单,以便仅查找该表单中的元素。您还可以使用getElementsByTagName('input')
来获取所有输入元素。在for
次迭代中,您必须检查inputs[i].type == 'text'
。
答案 1 :(得分:25)
为什么不删除该属性?
elem.removeAttribute('disabled')
elem.removeAttr('disabled')
答案 2 :(得分:2)
使用输入的disabled
属性将name
设置为false:
document.myForm.myInputName.disabled = false;
答案 3 :(得分:2)
最佳答案就是removeAttribute
element.removeAttribute("disabled");
答案 4 :(得分:0)
method 1 <input type="text" onclick="this.disabled=false;" disabled>
<hr>
method 2 <input type="text" onclick="this.removeAttribute('disabled');" disabled>
<hr>
method 3 <input type="text" onclick="this.removeAttribute('readonly');" readonly>
之前答案的代码似乎不能以内联模式运行,但有一种解决方法:方法3。