Comment faire un champ d'entrée en lecture seule avec JavaScript?
je sais que vous pouvez ajouter readonly="readonly"
à un champ d'entrée pour qu'il ne soit pas modifiable. Mais j'ai besoin d'utiliser javascript pour cibler l'id de l'entrée et de le faire lire que je n'ai pas accès au code de formulaire (son généré par le logiciel de marketing)
Je ne veux pas désactiver l'entrée car les données doivent être collectées sur soumettre.
Voici la page que j'ai ajoutée dans la suggestion ci-dessous sans succès jusqu'à présent:
http://bit.ly/1aI1Zxn
assurez-vous d'utiliser <body onload="onLoadBody();">
pour ceux qui utiliseront ceci dans le futur.
6 réponses
vous pouvez obtenir l'élément d'entrée et ensuite définir sa propriété readOnly
à true
comme suit:
document.getElementById('InputFieldID').readOnly = true;
spécifiquement, c'est ce que vous voulez:
<script type="text/javascript">
function onLoadBody() {
document.getElementById('control_EMAIL').readOnly = true;
}
</script>
Appel de cette onLoadBody()
fonction sur le corps de la balise comme:
<body onload="onLoadBody">
voir la Démo: jsfiddle .
les réponses ci-dessus n'ont pas fonctionné pour moi. La ci-dessous ne:
document.getElementById("input_field_id").setAttribute("readonly", true);
et supprimer l'attribut readonly:
document.getElementById("input_field_id").removeAttribute("readonly");
et pour exécuter lorsque la page est chargée, il est intéressant de se référer à ici .
document.getElementById('TextBoxID').readOnly = true; //to enable readonly
document.getElementById('TextBoxID').readOnly = false; //to disable readonly
Essayez Ceci:
document.getElementById(<element_ID>).readOnly=true;
vous avez ici un exemple pour définir l'attribut readonly:
<form action="demo_form.asp">
Country: <input type="text" name="country" value="Norway" readonly><br>
<input type="submit" value="Submit">
</form>