wah makasih banyak ya mas, jadi bisa sekarang. Btw, kalau aku debug menggunakan firebug, saat menggunakan datepicker, jqgrid, ctree, banyak sekali library yang diload bahkan berulang2… jadi bikin lemot. buat agan2 yang tau… yuuu mari bantu lapak ane gan…
setelah ane cek, klo menggunakan plugin jquery, scr otomatis library js yg d perlukan muncul di assets. Heranya, file2 yg udah ada ditambahkan lagi. Shg, dlm folder di dlm assets kt bisa menemukan file2 yg sama. (ane pake 1.6). Entah ini sebabnya atau bukan, pas ane cek utk menampilkan 1 jqgrid, ane perlu load file2 jquery hingga 11 MB (kebayang Lola nya). dear forum, you are best (t4 rujukan ane satu2nye yg bs diandalin) ! Adakah yg mau buat small example ajax dg 3 div Dimana salah satunya dg ajaxsubmit ? Atau apa solusi dr permasalahan ane? Tadinya ane kira renderPartial is help enough, but it didn’t.
ada apa dg versi brkutny? Apa yg menarik bagi agan? Regards.
yang ane lakukan juga cara agan… , maklum pengetahuan seperti ini masih belajar2 juga
kalau jqgrid, itu besar karena extensionnya sendiri sih udah besar menurut ane.
bayangkan sebelum install extension jqgrid, sudah harus install extension jquery ui khusus.
jadi menurut ane sih emang bakal loading banyak file sih, extension yang satu ini…
yang kasus asset, maksudnya file yang sama di direktori berbeda?
Itu memang sengaja dilakukan begitu di karenakan beberapa widget/controller yang berbeda yang pakai (terutama extension pihak ketiga). Misalnya widget ini pakai js ini, widget yang itu pakai file js ini juga.
Takutnya suatu hari salah satu widget butuh js yang beda, maka hanya js yang bersangkutan berubah. Itu sebabnya setiap widget/controller memiliki folder asset tersendiri. Biar nggak kecampur…
Tetapi kalau masalah loading, setau ane, Yii cukup pintar untuk tidak load 2 file javascript yang sama dalam 1 halaman. Sehingga file ganda ini hanya makan capacity tapi tidak membuat loading lama…
kalo ngeliat-liat di forum ini juga (di bagian yg englishnya) ada juga yg ngeposting solusinya, tapi jelas gak berlaku buat semua kasus (terutama yg pake widget2 extension)
cara tacklenya secara umum dengan ngegantiin komponen clientScript nya dengan class hasil ngeextends CClientScript, ntar algoritma registernya pake heuristic kita aja, kapan js tertentu mesti di load, kapan enggak,
oke, ane re post kasus ane lagi ya gan, tema aplikasi adalah laporan, jadi intinya view nya sbb (dalam satu view) :
|header___|
|_______________________|
|tree___|periode______|
|tree___|periode______|
|tree___|periode______|
|tree___|output_______|
|tree___|output_______|
|tree___|output_______|
|tree___|output_______|
di tree, ada nama2 laporan yang memiliki id
id itu dikirim ke controller untuk di filter mana yang perlu input periode dan mana yang tidak, jika perlu input periode, maka dengan renderPartial ane tampilkan kembali view dengan penambahan form input periode,
setelah di submit menggunakan ajaxSubmitButton, id dan periode di kirimkan kembali ke controller, lalu dengan controller renderPartial lagi untuk menampilkan jqgrid
mekanisme ini udah ane buat, nah yang jadi soal saat ajaxSubmitButton di klik, library di load dan banyak (bahkan looping), jadinya lolaaaaaaaaa . Setelah ane amati, saat button itu di klik, event yang ditangkap terjadi bisa langsung 1,2,3,4,5,6 kali. Sehingga terjadi pengulangan load library(assets) dan jqgrid menampilkan data kemudian data hilang lagi dari jqgrid sebanyak 1,2,3,4,5,6 kali hingga akhirnya data muncul, tergantung event yang ditangkap pada saat klik ajaxSubmitButton.
ok thank u gan, setelah kuriling2, ternyata sementara ini ane simpulkan bahwa ajaxSubmitButton yang bikin error, ane selesaikan dengan cara membuat button biasa dan menggunakan mekanisme AJAX jquery. Dan berhasil.
Tapi mungkin bisa jadi cara di atas suatu saat dicoba, untuk mendapatkan best performance.