2009-11-18 15 views

Antwort

30

Sie können versuchen,

document.getElementById("textboxid").readOnly = true; 
+0

Das funktionierte für mich –

+0

es ist nicht für IE arbeiten 10 – GANI

0

asp.net verwenden, ich glaube, Sie es auf diese Weise tun können:

myTextBox.Attributes.Add("readonly","readonly") 
+0

Nur-Lese nicht in FireFox-Browser arbeitet ... –

3

document.getElementById('textbox-id').readOnly=true funktionieren sollte

+0

nicht funktioniert ... do u eine andere Lösung haben ... –

+0

Versuchen Kleinschreibung das „O“ in nur lesbar. Alternativ können Sie versuchen, das Attribut "disabled" mit den Werten true und false zu verwenden. Die beiden Attribute unterscheiden sich nur geringfügig (http://www.w3.org/TR/REC-html40/interact/forms.html#adef-disabled). – Chris

+1

in IE, es funktioniert nicht mit einem niedrigeren Gehäuse "O". – kzh

0

es hängt davon ab, wie Sie das Ereignis auslösen . Der Schlüssel, den Sie suchen, ist textbox.clientid.

x.aspx Code

<script type="text/javascript"> 

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

Code hinter x.aspx.cs

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

"deaktiviert" ist nicht dasselbe wie "readOnly". 'disabled' wird nicht die Formulardaten für das Element senden, während' readOnly' dies tut. – kzh

2

diesen Versuchen: -

Satz nur falsch lesen (Editierbare TextBox)

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

set Nur lesen wahr (nicht bearbeitbar)

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

Dies kann auf IE und Firefox auch funktionieren.

0

Ich finde, dass document.getElementById('textbox-id').readOnly=true manchmal nicht zuverlässig funktioniert.

Stattdessen versuchen:

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

Ein wenig wortreich, aber es scheint zuverlässig zu sein.