web-dev-qa-db-fra.com

Définition de la propriété en lecture seule de la zone de texte sur true à l'aide de JavaScript

Comment définissez-vous la propriété en lecture seule de la zone de texte sur true ou false à l'aide de JavaScript dans ASP.NET?

14
qqqqqqqqqqq

Tu peux essayer

document.getElementById("textboxid").readOnly = true;
30
Sridhar

document.getElementById('textbox-id').readOnly=true devrait fonctionner

3
Chris

Essaye ça :-

set Read Only False (Zone de texte éditable)

document.getElementById("txtID").readOnly=false;

set Read Only true (non modifiable)

var v1=document.getElementById("txtID");
v1.setAttribute("readOnly","true");

Cela peut fonctionner sur IE et Firefox également.

Je trouve que document.getElementById('textbox-id').readOnly=true ne fonctionne parfois pas de manière fiable.

Au lieu de cela, essayez:

document.getElementById('textbox-id').setAttribute('readonly', 'readonly') et document.getElementById('textbox-id').removeAttribute('readonly').

Un peu verbeux mais cela semble être fiable.

0
SteveCinq

En utilisant asp.net, je pense que vous pouvez le faire de cette façon:

myTextBox.Attributes.Add("readonly","readonly")
0
Soufiane Hassou

cela dépend de la façon dont vous déclenchez l'événement. la clé que vous recherchez est textbox.clientid.

code x.aspx

<script type="text/javascript">

   function disable_textbox(tid) {
        var mytextbox = document.getElementById(tid);
         mytextbox.disabled=false
   }
</script>

code derrière x.aspx.cs

    string frameScript = "<script language='javascript'>" + "disable_textbox(" + tx.ClientID  ");</script>";
    Page.ClientScript.RegisterStartupScript(Page.GetType(), "FrameScript", frameScript);
0
Henry Gao