2011-12-14 65 views
8

Tôi có html sau:Làm cách nào để truy xuất dữ liệu POST HTML cho thao tác trong ASP.NET WebForms?

<html> 
    <body> 

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

    </body> 
</html> 

Làm thế nào để lấy giá trị trong "Tên" textbox đăng lại để các máy chủ web để thao tác trong ASP.NET WebForms?

(Tôi biết về ASP.NET tích hợp điều khiển và các khả năng với họ, nhưng tôi đang tìm kiếm một giải pháp "sạch" mà không cần dùng điều khiển tích hợp sẵn trong ASP.NET)

Trả lời

12

If you can not, hoặc không muốn sử dụng textbox asp.net, sau đó bạn có thể lấy lại tên của một hộp văn bản html thông thường như thế này:

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

Chỉ cần lưu ý rằng hộp văn bản được tạo theo cách này sẽ không tự động duy trì giá trị của chúng trên các postback như hộp văn bản asp.net sẽ.

+0

Cảm ơn bạn! Làm việc như một say mê! – Birdman

+0

@ Alex - tuyệt vời, rất vui được trợ giúp! –

2

giải pháp đơn giản nhất sẽ biến nó thành một thành phần phía máy chủ và truy cập nó bằng tên của nó. ví dụ.

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

... 

string name = Name.Text; 

Trừ khi bạn có lý do khác không sử dụng thành phần, bạn chỉ đang làm mọi thứ khó khăn hơn một phần vì không biện minh.

+0

Cảm ơn bạn! Tôi biết về các điều khiển ASP.NET được tích hợp sẵn, nhưng tôi đang tìm cách thực hiện thủ công bằng HTML "sạch". – Birdman

+0

@Alex Đó là html thuần túy. Khi chúng được hiển thị, chúng là các hộp văn bản html. –

+0

Tôi cũng biết rằng :-) Lý do tại sao tôi không sử dụng các điều khiển tích hợp là "bị bẩn tay" với phần html .. – Birdman

0

Bạn phải thêm id và runat = "server" trong mỗi điều khiển. như thế này:

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

của nó tốt hơn để sử dụng asp: TextBox như thế này:

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

ASP.net bao gồm các điều khiển máy chủ Html cho khả năng tương thích ngược cho một người như bạn thích html. làm cho các điều khiển máy chủ thẻ html của bạn bằng cách thêm các thuộc tính runat = "server" và id và bạn có thể truy cập chúng bên trong mã phía máy chủ của bạn với id của chúng.

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

Bây giờ sau này bạn có thể kiểm soát hành vi của họ:

name.Value="Hellow World !" 
Các vấn đề liên quan