If you configure a Kendo Grid with client-side paging, each time you call setDataSource to update the data source then a new .k-pager-numbers-wrap DIV is added to the page controls. I've replicated the problem in Dojo at https://dojo.telerik.com/UTolOzer by taking a basic client-side paging demo, moving the dataSource configuration into a separate function (with data("kendoGrid").setDataSource), and calling that function 25 times. At the end, the source shows the UL element with the page buttons inside 25 .k-pager-numbers-wrap DIV elements.
I first noticed this problem because in my own environment, each nested DIV was shifting the page buttons left 1 pixel and overlapping the "previous page" buttons. In my Dojo example, with 25 nested DIVs the page buttons disappear completely.
I've added the following in my own code as a workaround in the dataBound event of the grid:
var trueParent = e.sender.pager.element.find(".k-pager-numbers-wrap").first();
e.sender.pager.element.find("ul").appendTo(trueParent);
trueParent.find(".k-pager-numbers-wrap").remove();
Hello Joshua,
Indeed this seems like a bug. I have already logged it in our repo. You can monitor our progress on the matter from here.
As a token of gratitude for reporting this to us I have updated your account points. For now we suggest to use the workaround which you implemented.
Regards,
Angel Petrov
Progress Telerik