如何使用javascript从HTML输入中删除“已禁用”属性?
<input id="edit" disabled>
在onClick上,我希望输入标签不包含“ disabled”属性。
Answers:
将元素的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'
。
为什么不删除该属性呢?
elem.removeAttribute('disabled')
elem.removeAttr('disabled')
jQuery("#success").removeAttr("disabled");
-这对我有用,谢谢!
removeAttribute
似乎支持@MarCrazyness 。它被标记为unknown
可以使用,因此我刚刚打开IE并检查了它是否有效。是的
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。
method 1 <input type="text" onclick="this.disabled=false;" disabled> <hr> method 2 <input type="text" onclick="this.removeAttribute('disabled');" disabled>