|
|
|
ช่วยหน่อยครับ เกี่ยวกับ Dropdownlist ที่ทำการ cascade กัน |
|
|
|
|
|
|
|
ตอน Bind ค่าให้ DDL ตัวแรก เป็น Event ใน Page_Load รึเปล่าครับ
ถ้าใช่ ทุกครั้งที่ Page_PostBack มันก็จะ Bind ค่าไปอีกรอบถูกมั้ยครับ
เพราะฉะนั้น ใส่ If not Page.ispostBack ด้วยครับ ผมเข้าใจถูกมั้ยหว่า
ลองเอา Code มาดู หน่อยครับ
|
|
|
|
|
Date :
2011-06-06 00:51:25 |
By :
13crowns |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
น่าจะใช่นะครับ ผมลองเก็บค่าลง db จาก DDL2 มันก้อยังได้ค่าแรกของ DDL2 ทั้งทีเลือกข้อมูลที่ไม่ใช่ข้อมูลแรก
เด๋วลองเอาโค้ดมาให้ดูครับ
|
|
|
|
|
Date :
2011-06-06 01:08:30 |
By :
DayKhom |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Code (C#)
private void BindDrop1() // bind ลง ddl1
{
Conn c = new Conn();
ListItem InsertItem = new ListItem("กรุณาเลือกภาควิชา", "0");
DropDownList1.Items.Insert(0, InsertItem);
DropDownList1.DataSource = c.getDepartment();
DropDownList1.DataValueField = "departmentID";
DropDownList1.DataTextField = "sector";
DropDownList1.DataBind();
}
private void BindDrop2() // bind ข้อมูลจาก ddl1
{
Conn c = new Conn();
DropDownList2.DataSource = c.getProfessor(Convert.ToInt32(DropDownList1.SelectedItem.Value));
DropDownList2.DataValueField = "departmentID";
DropDownList2.DataTextField = "name";
DropDownList2.DataBind();
}
protected void DropDownList1_SelectedIndexChanged1(object sender, EventArgs e)
{
DropDownList2.Visible = true;
BindDrop2();
}
protected void Page_Load(object sender, EventArgs e) // pageload
{
if (!Page.IsPostBack)
{
BindDrop1();
BindDrop2();
}
}
|
|
|
|
|
Date :
2011-06-06 01:12:25 |
By :
DayKhom |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Load balance : Server 02
|