javascript删除“禁用”属性为htmlinput

我怎样才能删除“禁用”属性的HTMLinput使用JavaScript?

<input id=edit disabled> 

在onclick我想我的input标签不包含“禁用”属性。

将元素的disabled属性设置为false:

 document.getElementById('my-input-id').disabled = false; 

如果您使用jQuery,则相当于:

 $('#my-input-id').prop('disabled', false); 

对于多个input字段,您可以通过类来访问它们:

 var inputs = document.getElementsByClassName('my-input-class'); for(var i = 0; i < inputs.length; i++) { inputs[i].disabled = false; } 

例如,可以用一个表单replacedocument ,以便仅查找该表单中的元素。 你也可以使用getElementsByTagName('input')来获取所有的input元素。 在迭代中,你必须检查inputs[i].type == 'text'

为什么不只是删除该属性?

  1. 香草JS: elem.removeAttribute('disabled')
  2. jQuery: elem.removeAttr('disabled')

要使用input的name属性将disabled设置为false:

 document.myForm.myInputName.disabled = false; 
 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。

看演示https://jsfiddle.net/eliz82/xqzccdfg/