jQuery JQGrid 分页事件

标签 jquery events jqgrid pagination

我是 jQuery 新手,不知道如何实现 jQuery JqGrid 分页事件。 实际要求是,在更改页面时我必须从数据库中获取一些记录。 因此,我需要知道如何实现 Jqgrid 分页事件。

出现错误 @ Line:var currentPage = $('#gridData').getGridParam('page');//获取当前页面

错误消息:0x800a01b6 - microsoft jscript 运行时错误对象不支持此属性或方法。 下面是引用代码。

$("#gridData").jqGrid({
                data: selectedTblData.Table.Rows,
                datatype: "local",
                toppager: true,
                height: "100%",
                width: (selectedTblData.Table.Width < 1000) ? 985 : "100%",
                altRows: true,
                altclass: "custom-alt-row",
                colNames: selectedTblData.Table.colNames,
                colModel: selectedTblData.Table.colModel,
                multiselect: false,
                rowNum: 25,
                rowList: [15, 25, 50, 75, 100],
                mtype: 'GET',
                pager: '#pager',
                sortname: selectedTblData.Table.colNames[0],
                sortorder: "asc",
                viewrecords: true,
                shrinkToFit: (selectedTblData.Table.Width < 1000),
                caption: tableName,
                secureUri: false,
                contentType: "application/json; charset=utf-8",
                loadonce: true,
                //BS Page start
                onPaging: function (pgButton) {
                    //debugger;


                    var pagerId = this.p.pager.substr(1); // get paper id like "pager"
                    var currentPage = $('#gridData').getGridParam('page'); //get current  page
                    var lastPage = $("#gridData").getGridParam("lastpage"); //get last page 

                if (currentPage - 1 == lastPage - 1)
                    $("#gridData").setGridParam({ page: lastPage }).trigger("reloadGrid"); // set the requested page to the last page value – then reload

                var currentRecordCount = $("#gridData").getGridParam("reccount");  //get the record count
                var recordsPerPage = $("#gridData").getGridParam("rowNum");  // get the records per page
                var newValue = 0;  // new value
                if (pgButton === "user") {
                    newValue = $(".ui-pg-input").val(); 
                }
                else {

                    if (pgButton.indexOf("next") >= 0)
                        newValue = ++currentPage;
                    else if (pgButton.indexOf("prev") >= 0)
                        newValue = --currentPage;
                    else if (pgButton.indexOf("last") >= 0)
                        newValue = $("#gridId").getGridParam('lastpage');
                    else if (pgButton.indexOf("first") >= 0)
                        newValue = 1;
                }
                    alert(newValue);
                    $("#gridData").setGridParam({ page: newValue }).trigger("reloadGrid");  // set the requested page to the last page value – then reload
                    currentRecordCount = $("#gridData").getGridParam("reccount");  // read the current page records
                    alert('RecordCount: ' + currentRecordCount + ' RecordsPerPage: ' + recordsPerPage);

                if (currentRecordCount < recordsPerPage) {
                    startRange = 1;
                    endRange += endRange;

                    jQuery("#gridData").jqGrid("setGridParam", { datatype: "json", data: "{TableName :'" + tableName + "'}", url: "TablesCoolView.aspx/GetTableData" }).trigger("reloadGrid");
                }
            }
                //BS page end
            });

请帮我解决这个问题。

最佳答案

onPaging 是您正在寻找的事件..

这会有所帮助:http://www.trirand.com/jqgridwiki/doku.php?id=wiki:pager

关于jQuery JQGrid 分页事件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18502551/

相关文章:

jquery - JQGrid colModel 和数据的动态填充

javascript - 在 jquery Mobile 中获取表单 ID 'pageshow'

c# - 选中 form2 上的复选框时如何更改 Form1 label.text?

javascript - jqGrid 复选框事件

java - 不同 JPanel 的鼠标监听器事件

c# - Esc键事件不会在winforms中被触发

javascript - free-jqgrid:我可以对 stype: select 使用多个比较运算符吗?

jquery - 具有相同类的所有元素都受点击功能的影响

javascript - Bootstrap 3 Datepicker不显示日历

javascript - 尝试从输入中获取文件在 IE8 中返回对象错误