有没有人知道一种方法来设置jqGrid来使用数字寻呼机?
而不是第1页,共20页,我想让分页像1,2,3,4> >>当我点击4时,它会像<< < 4,5,6,7> >> 我已经看到其他网格是如何做到的,但是我似乎找不到jqGrid的内置方式.
我可能有办法实现它,但如果有东西已经存在,我不想重新发明.在从网格数据中获取用户数据后,我将添加自定义按钮,以确定可用页面.
Telerik的网格(http://demos.telerik.com/aspnet-mvc/grid).
解决方法
噢噢噢!在我写代码firegnom发布了另一个实现.不过更好的两个工作版本没有人.
我做了小演示,演示了如何实现在寻呼机中的链接的行为.我做了这样的代码,它可以在表单中显示寻呼机
(如果使用pginput:jqGrid的false参数)或表单
在这两种情况下,当前页面将不会显示在列表中.如何看到我为链接插入带下划线的样式.如果你不喜欢,你应该删除
td.myPager a { text-decoration:underline !important }
loadComplete事件处理程序中相应的JavaScript代码是完整的:
loadComplete: function() { var i,myPageRefresh = function(e) { var newPage = $(e.target).text(); grid.trigger("reloadGrid",[{page:newPage}]); e.preventDefault(); }; $(grid[0].p.pager + '_center td.myPager').remove(); var pagerPrevTD = $('<td>',{ class: "myPager"}),prevPagesIncluded = 0,pagerNextTD = $('<td>',nextPagesIncluded = 0,totalStyle = grid[0].p.pginput === false,startIndex = totalStyle? this.p.page-MAX_PAGERS*2: this.p.page-MAX_PAGERS; for (i=startIndex; i<=this.p.lastpage && (totalStyle? (prevPagesIncluded+nextPagesIncluded<MAX_PAGERS*2):(nextPagesIncluded<MAX_PAGERS)); i++) { if (i<=0 || i === this.p.page) { continue; } var link = $('<a>',{ href:'#',click:myPageRefresh }); link.text(String(i)); if (i<this.p.page || totalStyle) { if (prevPagesIncluded>0) { pagerPrevTD.append('<span>, </span>'); } pagerPrevTD.append(link); prevPagesIncluded++; } else { if (nextPagesIncluded>0 || (totalStyle && prevPagesIncluded>0)) { pagerNextTD.append('<span>, </span>'); } pagerNextTD.append(link); nextPagesIncluded++; } } if (prevPagesIncluded > 0) { $(grid[0].p.pager + '_center td[id^="prev"]').after(pagerPrevTD); } if (nextPagesIncluded > 0) { $(grid[0].p.pager + '_center td[id^="next"]').before(pagerNextTD); } }
其中grid和MAX_PAGERS被定义为
var grid = $("#list"),MAX_PAGERS = 2;