2013-10-25 11 views
6

Mam TextBox jak poniżej.Wartość i właściwości tekstu w asp.net TextBox (wartość zostanie nadpisana przez tekst)

<asp:TextBox runat="server" ID="Name" value="aaaa" text="bbbb"/> 

w kodzie za.

Dim str As String = Name.Text.Trim() ' value as bbbb 

Po usunięciu właściwości tekstu.

<asp:TextBox runat="server" ID="Name" value="aaaa" /> <%--text="bbbb"--%>  

Dim str As String = Name.Text.Trim() ' value as aaaa 

za każdym razem, gdy przechowuję właściwość tekstową, nie mam dostępu do pola Wartość. Jak uzyskać pole wartości, gdy właściwość text jest obecna?

+1

nie należy użyć właściwości Value, to nie jest częścią pola tekstowego. Powinieneś zawsze używać tekstu. Spójrz na źródło widoków, gdy masz zarówno wartość, jak i tekst. –

Odpowiedz

6

Nie używaj własności value. Jeśli używasz asp.net's TextBox musisz użyć Text.

Po dodaniu właściwości, które wykonują nie istnieje w klasie tekstowym asp.net odda te właściwości powstałego html. Więc

<asp:TextBox runat="server" ID="Name" text="bbbb" mycustomproperty="hi" /> 

odda coś takiego

<input type="text" value="bbbb" id="..." name="..." mycustomproperty="hi"/> 

Jeśli pominąć TextBox „s Text własność i napisać właściwość wartość, a następnie właściwość wartość będzie renderowany.

<asp:TextBox runat="server" ID="Name" value="aaaa" /> 

Aby

<input type="text" value="aaaa" id="..." name="..."/> 

TextBox nie ma właściwość wartość. Po utworzeniu instancji TextBox właściwość wartości HTML zostanie przypisana do właściwości Tekst i dlatego dostęp do właściwości Tekst ma wartość "aaaa".

Podsumowanie: podczas korzystania z formantów ASP.NET Nie używaj własności wartości. Użyj właściwości specyficznych dla kontroli.

0

Jeśli próbujesz do przechowywania danych związanych z kontrolą na stronie, a następnie rozważyć użycie kontrolę do przechowywania wartości, które mogą być odczytywane w poprzek plecami pocztowych do serwera ASP.NET HiddenField, tak:

<asp:HiddenField runat="server" id="HiddenFieldValue" /> 

Następnie w kodzie opóźnieniem, można uzyskać i ustawić wartość za pośrednictwem właściwości Value, tak:

' Storing value 
Me.HiddenFieldValue.Value = "value you want to keep" 

' Retrieving value 
Dim str As String = Me.HiddenFieldValue.Value 
Powiązane problemy