โครงการหนังสือ ASP.NET 2.0 ฟรีสำหรับโรงเรียน
แจกไปหมดแล้ว 15 เล่มครับ
งานสัมนาดีของ Developer มาแล้วครับ งานนี้มีเรื่อง Visual Studio เป็นหลัก และเสริมด้วยการพัฒนาแอพพลิเคชั่นบน Windows Phone 7 และ Windows 8 เห็นก่อนใครครับ
ดูรายละเอียด และลงทะเบียนจากลิงค์นี้ครับ http://www.thaivmadmin.com/index.php/News/อยากเห็น-Windows-8-ก่อนใคร-ต้องมางาน-Microsoft-TechDays-Thailand-2012.html
Event ดีที่ยำใหญ่หลายหัวข้อครับ วันอาทิตย์ที่ 15 มกราคม 2012 นี้แล้วครับ อาจจะโพสต์ช้าไปหน่อย ใครสนใจดูได้ที่นี่ครับ http://www.facebook.com/events/317882901567092/
ผมมีปัญหาเรื่อง UpdatePanel ใน ContentPage ครับ
สิ่งที่ผมต้องการคือ เมื่อกรอกข้อความลงใน Textbox แล้วกดปุ่ม submit จากนั้น เก็บเข้าฐานข้อมูล
แล้วให้แสดงข้อความนั้นทันที (พร้อมกับข้อความเก่าๆด้วย) บน DataGrid ซึ่งอยู่ในหน้าเดียวกันแบบ Ajax ครับ
สิ่งที่ผมทำคร่าวๆคือ ใน .cs
ปุ่ม submit ก็ทำการเชื่อมฐานข้อมูล insert ค่าตามปกติครับ และทำการ datagrid Binding เพื่อให้มันแสดงข้อความทั้งหมดอีกครั้ง
ปรากฏว่ามันไม่ ajax อ่ะครับ
ผมทำใน UpdatePanel แล้วนะครับ
ผมขาดอะไรอีกครับ หรือทำอะไรผิดตรงไหน ขอคำแนะนำหน่อยครับ
สงสัยที่บอกว่ามันไม่ ajax อันนี้หมายถึงว่ามันไม่แสดงข้อความทันทีหรือเปล่าครับ
ถ้าใช่อันนี้ก็เป็นพฤติกรรมปกติของ update panel ครับ เพราะตอนที่เรา submit ข้อมูล ตัว update panel มันจะแอบ postback ไปที่ server ปกติ และ server ก็จะสร้างผลลัพธ์ (response) กลับออกมาเหมือน webform ปกติครับ แต่เพียงแค่ update panel มันจะฉลาดหน่อยคือดึงเอาเนื้อหาเฉพาะที่มันต้องการจากผลลัพธ์ที่มาจาก server เพื่อเอามาแสดงใน update panel ครับ ซึ่งแบบนี้เป็น ajax แบบเทียมครับ
สำหรับ ajax แบบจริงๆ ที่เรียกว่า pure ajax นั้น เราต้องใช้ ajax library ที่เป็น java script ตอนนี้ที่นิยมกันก็คือ jQuery ครับ ซึ่งมันจะรับส่งข้อมูลกับ web service แทน ซึ่งปริมาณข้อมูลที่รับส่งกันจะกระชับ และขนาดเล็กกว่าใน update panel มากครับ ซึ่งส่งผลให้มันแสดงข้อมูลได้เร็วกว่าด้วยครับ