web-dev-qa-db-fra.com

Comment activer un champ de texte désactivé?

Je veux savoir comment activer un champ de texte de formulaire désactivé lors de la soumission. Aussi, je veux m'assurer que si l'utilisateur retourne au formulaire ou cliquez sur le champ de réinitialisation s'affichera à nouveau comme désactivé.

J'ai essayé d'utiliser

document.pizza.field07.disabled = false ;

Il désactive le champ, en cliquant sur réinitialiser ou en appuyant sur le bouton de retour, il reste activé.

Veuillez guider.

15
Hassan Z

Pour accéder à cet élément de manière plus standard, utilisez document.getElementById with setAttribute

document.getElementById("field07").setAttribute("disabled", false);

[~ # ~] modifier [~ # ~]

Sur la base de votre commentaire, il semble que field07 soit un nom, pas un identifiant. En tant que tel, cela devrait être ce que vous voulez:

var allfield7s = document.getElementsByName("field07");
for (var i = 0; i < allfield7s.length; i++)
    allfield7s[i].setAttribute("disabled", false);
19
Adam Rackis

C'est la seule solution de travail pour moi:

var allfield7s = document.getElementsByName("field07");
for (var i = 0; i < allfield7s.length; i++)
    allfield7s[i].removeAttribute("disabled");
10
zajc3w

Vous pouvez activer un contrôle html désactivé avec le code JavaScript suivant.

document.getElementById ('elementId'). removeAttribute ('disabled');

7
Bins Jose

Vous pouvez également le faire avec jQuery :

$(function(){
    $("[name='field07']").prop("disabled", false);
});

Nous sélectionnons simplement tous les éléments où l'attribut name est field07 (En utilisant le nom parce que vous l'avez dit dans les commentaires de la réponse de @ AdamRackis) et définissons sa propriété disabled sur false.

En savoir plus sur prop() .

2
Purag