Penulis: Cui Chikun (Richard Troy-Rex, RickTroy)
Hubungi: [email protected] , http://ricktroy.cnblogs.com/
Kemarin saya sedang mencari solusi sederhana untuk menggunakan Ajax di ASP.NET V1.1.4322, tetapi ternyata model halaman ASP.NET sangat "aneh". Di antara semua peristiwa dan metode internal yang dimilikinya, sepertinya tidak ada yang dapat mengumpulkan solusi tanpa menyegarkan halaman. Bahkan jika XmlHttpRequest di halaman tersebut digunakan untuk melakukan HTTP GET, peristiwa Page_Load tidak dijalankan (karena tidak ada hasil tes pada kode Page_Load di responText dari XmlHttpRequest ).
Nanti saya berharap untuk menggunakan HtmlControl, dan kemudian menggunakan __doPostBack(EventTarget, EventArgument); ke skrip RaisePostBackEvent tetapi ternyata setelah formulir dikirimkan, halaman akan di-refresh (kemudian saya mengetahui bahwa ini adalah bentuk Html yang masuk akal, saya belum pernah mempelajarinya sebelumnya). Tetapi bahkan jika Anda menggunakan HtmlControl untuk melakukan HTTP GET dari XmlHttpRequest, masalahnya masih tidak dapat diselesaikan (acara Page_Load tidak merespons seperti di atas ).
PS: Bagi yang ingin meniru WebControl untuk server PostBack, Anda dapat menulis dua Input tersembunyi di klien, bernama __EVENTTARGET dan __EVENTARGUMENT, lalu menggunakan sintaks skrip __doPostBack(control, argument); Hanya
setelah meminjam ASP.NET Profesional orang lain saya tahu bahwa IHttpHandler dan IHttpModule dapat digunakan dalam model ASP.NET untuk membuat permintaan HTTP perpustakaan dapat ditulis, skalabilitasnya tidak optimis.
Bisakah Anda memberi saya saran, apakah ada peristiwa dan metode yang dapat langsung merespons dan memproses permintaan HTTP di halaman?
Atau siapa yang dapat menyediakan metode formulir submit() untuk meneruskan format data?
Karena XmlHttpRequest bisa dikirim pada saat request, jika kita mengetahui bentuk submit datanya, sepertinya kita bisa mengirimkan datanya tanpa melakukan refresh (tapi saya juga sudah mempertimbangkan bahwa ini sepertinya ada resiko keamanannya).
Tolong beri saya saran Anda.