Register Register Member Login Member Login Member Login Forgot Password ??
PHP , ASP , ASP.NET, VB.NET, C#, Java , jQuery , Android , iOS , Windows Phone
 

Registered : 109,027

HOME > .NET Framework > Forum > รบกวนพี่ๆใน Thaicreate ช่วยอธิบายคำว่า ispostback กับ Viewstate แบบละเอียดหน่อยอ่าค่ะ asp.net



 

รบกวนพี่ๆใน Thaicreate ช่วยอธิบายคำว่า ispostback กับ Viewstate แบบละเอียดหน่อยอ่าค่ะ asp.net

 



Topic : 069865



โพสกระทู้ ( 325 )
บทความ ( 0 )



สถานะออฟไลน์




พอดีไปอ่านดู แล้วทำความเข้าใจกับมัน แล้วก็งงๆ แต่คิดว่ามันต้องใช้บ่อยแน่ๆ ก็เลยอยากจะเข้าใจมันให้สักที

อย่างคำว่า if not ispostback = true then label1.text = "จริง" สำหรับ Page.Load นี่มันหมายความว่า(ตามความเข้าใจของเรานะ)

ถ้า...ไม่ใช่ การ Refresh ให้แสดง label1 แสดงคำว่า "จริง" อย่างนี้ถูกหรือเปล่า (เอาความหมายมันอ่ะค่ะ)

สรุป ispostback ก็คือการ Refresh

ก็เลยสงสัยว่า ถ้าเราทำงานอยู่ที่ Page1 แล้ว กดปุ่ม submit ให้มันไปที่ Page2 แล้วเราก็ใช้ปุ่ม Back ของ Browser ในการย้อนกลับมา Page1 มันจะ Refresh หรือว่า ไม่ Refresh เพราะการ Back กลับมามันเหมือนกับ เรากด Ctrl + z (undo) เพราะว่าค่ามันก็เหมือนเดิม เราก็เลยคิดว่ามันไม่ Refresh ที่นี้คำถามก็คือ

ทำยังไงให้เรากด Back ของ Browser แล้วให้มันทำการ Refresh ด้วย? คือ...ขี้เกียจสร้างปุ่ม Redirect ให้มันย้อนกลับมา Page1 อ่าค่ะ แล้วก็อยากให้มัน Refresh ทุกครั้ง โดยไม่ต้องกดปุ่ม หรือ ถ้าไม่ได้จริงๆ ก็คงต้องใช้วิธีกด F5 อย่างเดียวหรือเปล่าคะ

แล้วก็คำถามสุดท้าย Ispostback ส่วนใหญ่เขาใช้ทำอะไรบ้างหรอคะ อยากได้ตัวอย่างสักนิดนึง ไว้เป็นแนวทางน่ะค่ะ

อย่างเช่น ที่เจอล่าสุด ก็คือ Control Listbox ที่ต้องตั้งให้ ispostback เป็น True เพื่อให้มันใช้ Event SelectindexChange ได้ แต่ก็ยังไม่เข้าใจความหมายค่ะว่า มันทำงานยังไง.....ตามความเข้าใจตอนนี้ก็คือ "ถ้าเราคลิ๊กเลือก index ของ Listbox จะทำการส่งค่าไปถาม Server ก่อนว่ามีข้อมูลไหม ถ้ามีให้ทำงาน" ประมาณนี้หรือเปล่า


คือ สรุปแล้วยังไม่เข้าใจความหมายของ Ispostback อย่างถ่องแท้อ่าค่ะ

ส่วน Viewstate นี่ไม่เข้าใจเลย แล้วก็ยังไม่เคยใช้เลย ค่ะ อ่านแล้วงงกว่า ispostback อีก^^

อยากทราบว่า Viewstate มันมีประโยชน์ยังไงคะ?

ขอโทษล่วงหน้านะคะ พอดีเพิ่งหัดเขียนเว็บเป็นครั้งแรกในชีวิต เขียนจนจะเสร็จอยู่แล้ว ยังงงกับ 2 คำนี้อยู่เลย เพราะตอนเขียน vb.net มันไม่มีน่ะค่ะ

ขอบคุณเว็บ Thaicreate.com มากค่ะ^^



Tag : .NET, Ms Access, Web (ASP.NET), VB.NET







Move To Hilight (Stock) 
Send To Friend.Bookmark.
Date : 2011-12-03 11:54:21 By : mayapopy View : 6083 Reply : 5
 

 

No. 1



โพสกระทู้ ( 245 )
บทความ ( 0 )



สถานะออฟไลน์


ทำยังไงให้เรากด Back ของ Browser แล้วให้มันทำการ Refresh ด้วย? คือ...ขี้เกียจสร้างปุ่ม Redirect ให้มันย้อนกลับมา Page1 อ่าค่ะ แล้วก็อยากให้มัน Refresh ทุกครั้ง โดยไม่ต้องกดปุ่ม หรือ ถ้าไม่ได้จริงๆ ก็คงต้องใช้วิธีกด F5 อย่างเดียวหรือเปล่าคะ

คงไม่ได้หรอกมั้งครับเท่าที่ผมเดานะ เพราะเป็นเรื่องของ Browser และ ดีที่สุดคงจะจับปุ่ม Backspace แล้วให้ทำการ Refresh ล่ะมั้งครับ


แล้วก็คำถามสุดท้าย Ispostback ส่วนใหญ่เขาใช้ทำอะไรบ้างหรอคะ อยากได้ตัวอย่างสักนิดนึง ไว้เป็นแนวทางน่ะค่ะ


ในการเขียน WebApp ต้องมีการจัดลำดับ การทำงาน ดีๆ ครับ Event ต่างๆต้องชัดเจน ว่าทำอะไรบ้าง
ใน Event Page Load(ส่วนใหญ่ if not Page.ispostback then) คำสั่งต่างๆใน If นี้ จะเป็นการทำงาน ในครั้งแรก ที่เข้า Page Load กล่าวคือ
ถ้าใช้ Control อื่นๆ อย่างเช่น Button (สังเกตได้จาก เพจกระเพื่อม) จะมีการ PostBack กลับไปที่ Server 1 ครั้ง อันนั้น จะไม่เข้า คำสั่งที่อยู่ใน If ที่กล่าวไปข้างต้น ครับ ส่วนใหญ่ใน If นี้ จะเป็นคำสั่ง หรือ Function ในการ ดึงข้อมูลจาก Database ครับ ไม่เช่นนั้นแล้ว
ทุกครั้งที่กด ปุ่ม หรือ Control ใดๆ ก็ตามที่มีการ PostBack กลับไป เพื่อให้ Server รู้ว่ามีการกดปุ่ม ก็จะทำการ คิวรี่ข้อมูลจาก Database ทุกครั้ง ซึ่งไม่จำเป็นเลย

ส่วน ตัวแปร Viewstate ใช้สำหรับ เก็บ อะไรก็ตาม เช่น Datatable String Integer อะไรก็แล้วแต่ แต่ ข้อจำกัดจะต่างจากตัวแปร แบบ Session ครับ เพราะ Session ใช้ได้กับทุกเพจ หากอย่างอยู่ใน Site นั้นๆ ครับ แต่ Session ก็ต้องระวังเพราะเป็นการใช้ Resource ของ server ส่วน Viewstate ใชได้ แค่ Page นั้นๆ เท่านั้น

อย่าเพิ่งตื่นเต้นไปก่อนครับ การหาข้อมูลไว้ก่อนเป็นเรื่องดี แต่หากลองทำดูแล้ว จะเจอปัญหา แล้วจะเข้าใจว่าทำไมต้องใช้ตัวแปรพวกนี้ครับ

ทั้งหมดนี้เป็น ประสบการณ์ ที่ผ่านมาของผมนะครับ อาจจะผิดจากความจริงไปบ้าง นะจ๊ะ จุ๊บๆ






แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2011-12-03 23:38:04 By : 13crowns
 


 

No. 2



โพสกระทู้ ( 74,058 )
บทความ ( 838 )

สมาชิกที่ใส่เสื้อไทยครีเอท

สถานะออฟไลน์
Twitter Facebook

เข้าใจง่าย ๆ

IsPostBack()
เป็นเหตุการณ์เมื่อมีการ Submit Form ครับ (กรณีที่เป็น Link จะไม่ใช่ IsPostBack)

ViewState
เป็นตัวแปรที่เก็บ Event ต่าง ๆ สำหรับส่งเหตุการณ์ไปยังเหตุการณ์ถัดไป สังเกตุง่าย ๆ ผ่านตัวแปร HIDDEN

Go to : ASP.NET ViewState
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2011-12-03 23:46:41 By : webmaster
 

 

No. 3



โพสกระทู้ ( 74,058 )
บทความ ( 838 )

สมาชิกที่ใส่เสื้อไทยครีเอท

สถานะออฟไลน์
Twitter Facebook

ลิ้งสำหรับ IsPostBack()

Go to : ASP.NET - Page.IsPostBack()
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2011-12-03 23:47:37 By : webmaster
 


 

No. 4



โพสกระทู้ ( 325 )
บทความ ( 0 )



สถานะออฟไลน์


ขอบคุณ คุณ Herriken มากนะคะ แล้วก็ขอบคุณ คุณ mr.win อีกครั้งค่ะ พอดีหยุดไป 3 วัน เพิ่งมาทำงาน เลยเพิ่งจะได้อ่าน บอกตามตรงว่าก็ยังงงๆอยู่ค่ะ แต่ก็จะลองเก็บประสบการณ์ดูไปเรื่อย แต่ตอนนี้....

สังเกตุเจออะไรบางอย่างค่ะ พอดีลองดัก Error ไว้ที่ page_Load ดู ปรากฏว่า เวลาที่เรากดปุ่มอะไรก็ตามใน Form มันจะวิ่งกลับไปหา Page Load ก่อนทุกครั้งเลยค่ะ เราก็เลยงงอยู่ตั้งนานว่าทำไม ค่าที่เราตั้งไว้ มันชอบเปลี่ยนตลอดเวลา ก็เลยต้องใส่ If not ispostback เอาไว้ ก็เลยพอจะเดาได้แล้วค่ะ ว่า postpack ก็คือการกด Refresh ก็เลยต้องใส่ไปว่า "ถ้าไม่ใช่การ Refresh ถึงจะค่อยทำคำสั่ง" ลงไป มันถึงจะวิ่งข้ามไปอ่ะค่ะ แต่พอเรากด Refresh มันจึงจะทำคำสั่ง ตอนนี้ก็เลยพอจะเข้าใจความหมายมานิดๆ


แต่จะถามหน่อยว่า ตกลง คำสั่ง if not ispostback() มันก็เท่ากับ if ispostback = false ใช่ไหมคะ
ส่วน if ispostback() = if ispostback = true


เราเข้าใจถูกหรือเปล่า

ขอบคุณมากๆค่า
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2011-12-06 13:51:50 By : mayapopy
 


 

No. 5



โพสกระทู้ ( 325 )
บทความ ( 0 )



สถานะออฟไลน์


งงเลย แหะๆ พอเรากด Refresh มันก็ข้าม if not postback ไปอยู่ดีT_T

เราเข้าใจผิดอีกแล้วสิ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2011-12-06 13:54:21 By : mayapopy
 

   

ค้นหาข้อมูล


   
 

แสดงความคิดเห็น
Re : รบกวนพี่ๆใน Thaicreate ช่วยอธิบายคำว่า ispostback กับ Viewstate แบบละเอียดหน่อยอ่าค่ะ asp.net
 
 
รายละเอียด
 
ตัวหนา ตัวเอียง ตัวขีดเส้นใต้ ตัวมีขีดกลาง| ตัวเรืองแสง ตัวมีเงา ตัวอักษรวิ่ง| จัดย่อหน้าอิสระ จัดย่อหน้าชิดซ้าย จัดย่อหน้ากึ่งกลาง จัดย่อหน้าชิดขวา| เส้นขวาง| ขนาดตัวอักษร แบบตัวอักษร
ใส่แฟลช ใส่รูป ใส่ไฮเปอร์ลิ้งค์ ใส่อีเมล์ ใส่ลิ้งค์ FTP| ใส่แถวของตาราง ใส่คอลัมน์ตาราง| ตัวยก ตัวห้อย ตัวพิมพ์ดีด| ใส่โค้ด ใส่การอ้างถึงคำพูด| ใส่ลีสต์
smiley for :lol: smiley for :ken: smiley for :D smiley for :) smiley for ;) smiley for :eek: smiley for :geek: smiley for :roll: smiley for :erm: smiley for :cool: smiley for :blank: smiley for :idea: smiley for :ehh: smiley for :aargh: smiley for :evil:
Insert PHP Code
Insert ASP Code
Insert VB.NET Code Insert C#.NET Code Insert JavaScript Code Insert C#.NET Code
Insert Java Code
Insert Android Code
Insert Objective-C Code
Insert XML Code
Insert SQL Code
Insert Code
เพื่อความเรียบร้อยของข้อความ ควรจัดรูปแบบให้พอดีกับขนาดของหน้าจอ เพื่อง่ายต่อการอ่านและสบายตา และตรวจสอบภาษาไทยให้ถูกต้อง

อัพโหลดแทรกรูปภาพ

Notice

เพื่อความปลอดภัยของเว็บบอร์ด ไม่อนุญาติให้แทรก แท็ก [img]....[/img] โดยการอัพโหลดไฟล์รูปจากที่อื่น เช่นเว็บไซต์ ฟรีอัพโหลดต่าง ๆ
อัพโหลดแทรกรูปภาพ ให้ใช้บริการอัพโหลดไฟล์ของไทยครีเอท และตัดรูปภาพให้พอดีกับสกรีน เพื่อความโหลดเร็วและไฟล์ไม่ถูกลบทิ้ง

   
  เพื่อความปลอดภัยและการตรวจสอบ กระทู้ที่แทรกไฟล์อัพโหลดไฟล์จากที่อื่น อาจจะถูกลบทิ้ง
 
โดย
อีเมล์
บวกค่าให้ถูก
<= ตัวเลขฮินดูอารบิก เช่น 123 (หรือล็อกอินเข้าระบบสมาชิกเพื่อไม่ต้องกรอก)







Exchange: นำเข้าสินค้าจากจีน, Taobao, เฟอร์นิเจอร์, ของพรีเมี่ยม, ร่ม, ปากกา, power bank, แฟลชไดร์ฟ, กระบอกน้ำ

Load balance : Server 05
ThaiCreate.Com Logo
© www.ThaiCreate.Com. 2003-2024 All Rights Reserved.
ไทยครีเอทบริการ จัดทำดูแลแก้ไข Web Application ทุกรูปแบบ (PHP, .Net Application, VB.Net, C#)
[Conditions Privacy Statement] ติดต่อโฆษณา 081-987-6107 อัตราราคา คลิกที่นี่