2011-12-14 8 views
8

Mam następujące HTML:Jak pobrać dane HTML POST do manipulacji w WebForms ASP.NET?

<html> 
    <body> 

     <form runat="server"> 
     Name: <input type="text" name="name" /> 
     <br /> 
     <input type="submit" name="submit" /> 
     </form> 

    </body> 
</html> 

Jak pobrać wartość w polu „Nazwa” tekstowym wysłana z powrotem do serwera WWW do manipulowania w ASP.NET WebForms?

(wiem o ASP.NET wbudowanym kontroli i możliwości z nimi, ale szukam „czystej” rozwiązanie bez użycia wbudowanych w ASP.NET kontroli)

Odpowiedz

12

Jeśli nie możesz lub nie chcesz używać asp.net otaczaniem, można odzyskać Nazwa regularnych html tekstowym tak:

string nameTextPosted = Request.Form["name"]; 

Wystarczy pamiętać, że pola tekstowe utworzone w ten sposób nie będzie automatycznie utrzymywać ich wartości całej postbacks jak otaczaniem aSP.NET zostanie.

+0

Dziękuję! Działa jak marzenie! – Birdman

+0

@Alex - świetnie, chętnie pomożemy! –

2

najprostsze rozwiązanie byłoby przekształcić go w składnik po stronie serwera i dostęp do niego po nazwie. na przykład

<asp:TextBox Id="Name" runat="server"></asp:TextBox> 

... 

string name = Name.Text; 

Jeśli nie masz innych powodów, aby nie używać komponentu, z pewnością usprawniłoby to twoje działanie bez uzasadnienia.

+0

Dziękujemy! Wiem o wbudowanych kontrolkach ASP.NET, ale szukam sposobu, aby zrobić to ręcznie za pomocą "czystego" HTML. – Birdman

+0

@Alex To jest czysty html. Po ich wyrenderowaniu są to pola tekstowe HTML. –

+0

Też to wiem :-) Powodem, dla którego nie używam wbudowanych kontrolek, jest "zabrudzić sobie ręce" częścią html. – Birdman

0

Musisz dodać id i runat = "server" w każdej kontrolce. tak:

<input type="text" name="name" id="name" runat="server" /> 

jej lepiej użyć asp: TextBox tak:

<asp:TextBox ID="name" runat="server"></asp:TextBox> 
1

Program ASP.net zawiera formanty html służące do obsługi wstecznej dla osób lubiących html. utwórz kontrolki serwera znaczników html, dodając właściwości runat = "server" i id, a będziesz mógł uzyskać do nich dostęp wewnątrz kodu po stronie serwera, używając ich identyfikatora.

<form runat="server"> 
    Name: <input type="text" name="name" id="name" runat="server" /> 
    <br /> 
    <input type="submit" name="submit" id="name1" runat="server" /> 
    </form> 

Teraz po tym można kontrolować swoje zachowanie:

name.Value="Hellow World !" 
Powiązane problemy