這是一個建立於 的文章,其中的資訊可能已經有所發展或是發生改變。
文章來源:http://gf.johng.cn/597434
Ajax分頁與其他分頁方式的區別在於,分頁連結會使用Javascript方法來實現,該Javascript方法是分頁方法,參數固定為該分頁對應的分頁URL地址。
完整樣本如下:
package mainimport ( "gitee.com/johng/gf/g/os/gview" "gitee.com/johng/gf/g/net/ghttp" "gitee.com/johng/gf/g/util/gpage")func main() { s := ghttp.GetServer() s.BindHandler("/page/ajax", func(r *ghttp.Request){ page := gpage.New(100, 10, r.Get("page"), r.URL.String(), r.Router.Uri) page.EnableAjax("DoAjax") buffer, _ := gview.ParseContent(` <html> <head> <style> a,span {padding:8px; font-size:16px;} div{margin:5px 5px 20px 5px} </style> <script src="https://cdn.bootcss.com/jquery/2.0.3/jquery.min.js"></script> <script> function DoAjax(url) { $.get(url, function(data,status) { $("body").html(data); }); } </script> </head> <body> <div>{{.page}}</div> </body> </html> `, g.Map{ "page" : gview.HTML(page.GetContent(1)), }) r.Response.Write(buffer) }) s.SetPort(8199) s.Run()}
在該樣本中,我們定義了一個DoAjax(url)
方法用來執行分頁操作,為示範需要它邏輯很簡單,會載入指定分頁頁面的內容並覆蓋掉當前頁面的分頁內容。
function DoAjax(url) { $.get(url, function(data,status) { $("body").html(data); });}