How to enable a disabled text field?
Solution 1
To access this element in a more standard way, use document.getElementById with setAttribute
document.getElementById("field07").setAttribute("disabled", false);
EDIT
Based on your comment, it looks like field07 is a name, not an id. As such, this should be what you want:
var allfield7s = document.getElementsByName("field07");
for (var i = 0; i < allfield7s.length; i++)
allfield7s[i].setAttribute("disabled", false);
Solution 2
That is the only working solution for Me:
var allfield7s = document.getElementsByName("field07");
for (var i = 0; i < allfield7s.length; i++)
allfield7s[i].removeAttribute("disabled");
Solution 3
You can enable a disabled html control with the following JavaScript code.
document.getElementById('elementId').removeAttribute('disabled');
Solution 4
You can also do this with jQuery:
$(function(){
$("[name='field07']").prop("disabled", false);
});
We simply select all the elements where the name
attribute is field07
(using name because you said so in the comments of @AdamRackis's answer) and set its disabled
property to false
.
More about prop()
.
Solution 5
You can enable a disabled html control(like, input, textarea, button,...) with the help following code.
To disable:
document.getElementById("id_name").setAttribute("disabled", true);
To enable:
document.getElementById('id_name').removeAttribute('disabled');
Hassan Z
Updated on July 29, 2020Comments
-
Hassan Z almost 4 years
I wanna know how do I enable a disabled form text field on submit. Also I wanna make sure if user goes back to form or click reset field will show again as disabled.
I tried to use
document.pizza.field07.disabled = false ;
It does disables the field, by clicking reset or hitting back button still keeps it enable.
Please guide.
-
Hassan Z over 12 yearsI tried 'this:document.getElementsByName("field07").setAttribute("disabled", false);' but its not working.... field07 is name...
-
RobG over 12 yearsDon't bother with buggy setAttribute, just set the property directly:
allfield7s[i].disabled = false;
-
Adam Rackis over 12 years@Rob - I thought setAttribute was widely supported?
-
Tim Down over 12 years@AdamRackis: It is widely supported, but the property is simpler, just as standard, better supported and more readable.
-
RobG over 12 years@AdamRackis—it's widely supported, but implementations are inconsistent. Google "javascript setattribute issues IE".
-
Adam Rackis over 12 yearsThanks @TimDown - didn't realize setAttribute wasn't perfectly supported
-
merours almost 10 yearsCould you please add a link to the relevant documentation ?
-
Kenton de Jong over 6 yearsWhile this works, I downvoted it because using a third party library to change the attribute value of an element is not needed.
-
Matt West over 5 yearsThis is the best answer. Setting disabled to false per the accepted answer will just change the attribute to 'disabled = false' and the element will remain disabled.
-
phrogg over 5 yearsOn my Browser Firefox setattribute didn't work. So I used @RobG 's solution.