2013-07-17 17 views
5

Zrobiłem kilka badań i dowiedziałem się, jak mogę odczytać wartość z wejściowego html textbox.Uzyskaj wartość z wejściowego html w codebehind C#

To działało dobrze dla mnie, ale od razu nie działa.

To jest mój kod, to html wejście zwraca null

<input type="text" name="inpNickname" placeholder="Nickname" data-placement="right" data-toggle="tooltip" title="Nickname" id="txtNickname" runat="server"/> 

<input type="text" name="inpPassword" placeholder="Password" data-placement="right" data-toggle="tooltip" title="Password" id="txtPassword" runat="server"/> 

string Nickname = Request.Form["inpNickname"]; 
string Password = Request.Form["inpPassword"]; 

Gdybym zmienić Request.Form [] z identyfikatorami, to nadal nie działa.

+0

Próbowałaś się go przez identyfikator? –

+0

Tak, to też nie działa – Swag

+1

Co masz na myśli przez "nie działa"? Ciągi pozostają nieważne? –

Odpowiedz

17

Ponieważ jest on uruchomiony na serwerze ...

txtNickname.Value i txtPassword.Value da ci to, czego potrzebujesz.

Po określeniu runat="server" zasadniczo podajesz właściwość swojej klasie codebehind. Możesz więc uzyskać dostęp do tej właściwości i jej właściwości bezpośrednio.

+0

Kiedy próbuję tego, nie mogę umieścić. Tekst po txtNickname i txtPassword – Swag

+0

użyj zamiast tego txtNickname.Value. – bluetoft

+0

Dzięki! Zadziałało! – Swag

3

Dlaczego nie używać server control?

<asp:TextBox ID="txtNickname" runat="server" /> 

Kod za:

var nickName = txtNickname.Text; 
3
string Nickname = txtNickname.Text; 
string Password = txtPassword.Text; 

Uciekają na serwerze, zobacz this