Hello,
I've noticed in version 2014 Q3 combobox doesn't scroll top after read new data, in version 2015 Q1 always after read scroll is on top. I need the same solution in version 2015 Q1 as this (topic from forum).
01.(function ($, kendo) {02. var ExtendedComboBox = kendo.ui.ComboBox.extend({03. 04. _pager: null,05. _scrollTop: null,06. 07. init: function (element, options) {08. var that = this;09. 10. //set combobox defaults11. that.options.placeholder = "Select";12. that.options.autoBind = false;13. that.options.highlightFirst = true;14. that.options.suggest = true;15. that.options.filter = "contains";16. 17. kendo.ui.ComboBox.fn.init.call(that, element, options);18. 19. if (options.loadOnDemand) {20. var that = this;21. 22. if (options.itemsPerRequest != null) {23. this.options.itemsPerRequest = options.itemsPerRequest;24. }25. 26. that.dataSource.options.serverFiltering = true;27. that.dataSource.options.serverPaging = true;28. that.dataSource.options.serverSorting = true;29. that.dataSource._take = this.options.itemsPerRequest;30. 31. if (this.options.virtualScrolling == true) {32. $('ul', this.list).scroll(this, this.scroll);33. }34. 35. $('a.k-link', this._pager).css({36. cursor: 'pointer'37. }).click(function (e) {38. e.preventDefault();39. var items = that.dataSource.view().length;40. var total = that.dataSource.total();41. if (total != items) {42. that._scrollTop = $('ul', that.list).scrollTop();43. that.dataSource.pageSize(that.dataSource.pageSize() + that.options.itemsPerRequest);44. }45. });46. this.list.append(this._pager);47. 48. }49. },50. options: {51. name: "ExtendedComboBox",52. loadOnDemand: false,53. itemsPerRequest: 20,54. virtualScrolling: false55. },56. refresh: function () {57. kendo.ui.ComboBox.fn.refresh.call(this);58. 59. if (this._scrollTop != null) {60. $('ul', this.list).scrollTop(this._scrollTop);61. this._scrollTop = null;62. }63. },64. open: function () {65. this.refresh();66. kendo.ui.ComboBox.fn.open.call(this);67. },68. scroll: function (e) {69. var scrollTop = $(e.currentTarget).scrollTop();70. if (e.data._scrollTop != null) return;71. if (scrollTop + $(e.currentTarget).height() >= $(e.currentTarget)[0].scrollHeight - 1) {72. var items = e.data.dataSource.view().length;73. var total = e.data.dataSource.total();74. if (total != items) {75. e.data._scrollTop = scrollTop;76. e.data.dataSource.pageSize(e.data.dataSource.pageSize() + e.data.options.itemsPerRequest);77. }78. }79. }80. });81. 82. kendo.ui.plugin(ExtendedComboBox);83. })(window.kendo.jQuery, window.kendo);Thanks.