Tab Menu

Request.Form trong MasterPage - Asp.net

AnhDaiDienBaiDang How to Request.form working in MasterPage

Lấy và chuyển dữ liệu từ các Control trên nhiều trang aspx hoặc chính nó rất quan trong. Dùng phương thức GET trên Url thì không có vấn đề gì. Nhưng trong một số trường hợp muốn chuyển bằng POST. Điều này cũng không có gì khó khi đó chỉ là 2 trang aspx thông thường.

Nhưng vấn đề là POST trong trang Master Page. Không biết các bạn có gặp vấn đề gì không. Nhưng s mất rất nhiều time với nó. Nhân tiện chia sẽ cách s khắc phục nó..

Đầu tiên là Request.Form trong hai trang aspx bình thường. Trong Page1.aspx kéo thả một Textbox và một Button.
Page1.aspx
 I like Asp.net  

Trên Page2.aspx tạo một Lable để hiển thị. Và trong trang code-behind
Page2.aspx.cs
protected void Page_Load(object sender, EventArgs e)
{
     Label1.Text = Request.Form["TextBox1"];
}
Vậy là dữ liệu trong TextBox1 đã được lấy thành công ở trang Page2.

Tiếp theo Request.Form trong trang MasterPage, đây mới là vấn đề!
Bạn tạo một Master Page và một trang Default.aspx làm trang mặc định cho MasterPage: Set As Start Page...
Tại trang Default.aspx ta có một TextBox, Button, Lable.
Default.aspx


     I like Asp.net   
       
    This is:     

Tại code-behide của nó bạn có code sau.
Default.aspx.cs
protected void click(object sender, EventArgs e)
{
    // No display it by Request.Form  
    Label1.Text = Request.Form["TextBox1"];
    // This is way that can get data TextBox1
    Label1.Text = Request.Form["ctl00$ContentPlaceHolder1$TextBox1"];
}
Làm sao để có được ctl00$ContentPlaceHolder1$TextBox1 là vấn đề mà s cũng chưa rõ lắm. Bạn có thể tham khảo thêm về cấu trúc bên trong một trang ASP.Net tại đây.

Và bằng cách này bạn có thể Get được value của control ở bất cứ trang nào. Trong Button thêm thuộc tính postbackurl="~/namepage.aspx" để chuyển đến trang cần thiết...
S có file source nè (VS2010):


Pass: saliproblog
Bạn có thể trace output để biết dc cấu trúc trang Asp.net của chính mình: Trong file web.config thêm dòng
<trace enabled="true" pageOutput="true" localOnly="false"/>
trong cặp thẻ <system.web></system.web>

Hiện có 0 comments

Post a Comment

Bạn có thể tự do cho ý kiến, thảo luận về bài viết này nhưng phải theo những điều khoản sau:
- Phải nghiêm túc, không dung tục, không spam.
- Nội dung phải liên quan đến bài viết.
- Không mang tính chất chính trị...
- Hạn chế sử dụng Ẩn danh, hãy dùng Tên/URL để thay thế.
Lưu ý : Có thể sử dụng tag HTML cơ bản trong comment: br, b, i, u, a href= ...

:)
:(
;)
:D
=))
:-/
:x
I-)
@-)
=D:
:-q
:-w
[-X
B-)
:((
:-B
:-h
:x(
:-*
~O)
@};-

About

RSS
Coming soon... :))