Hello,
Trying to implement search functionality in igGrid table. It is column based search(i.e horizontal search) with capability to search 'next' and 'prev' search 'text' in grid table.
I have attached sample code which loads 20,000 rows in igGrid table.
Currently implemented code is based on jquery code which searches up till 73 records.
$("#rowSelectionGrid").closest("table").find("tr td:nth-child(" + (parseInt(val[index])+1) + ")");
trying to find what is equivalent to above code to get all cells in selected columns in igGrid. Trying to implement code which reached all 20,000 rows in igGrid table.
Please help me in finding a solution for this.
Thanks
S M
Hello S M,
There is no way to get all of the cells, when using virtualization, because only a small chunk of them is rendered in the DOM.
To achieve filtering, you can reach out to the records from the dataSource and filter by their values.
Once you've got the index of the record, there is a way to scroll to it - http://help.infragistics.com/jQuery/2015.2/ui.iggrid#methods:virtualScrollTo
And after the scrolling the row is going to be rendered into the DOM. Once this is done you can get it and apply styles to it.
Also note that this behavior seems very close to the selection feature, please refer to the methods of that feature.
http://help.infragistics.com/jQuery/2015.2/ui.iggridselection#methods:selectCell
You can select virtual rows/cells with Selection API and you don't have to scroll to the desired row.
Thank you Deyan for your response.
I am creating a virtualization grid for displaying 20,000 rows. If grid is virtualized we can not get all 20,000 rows at once. I see if virtualizationMode: "continuous" i am getting 72 rows at first. I am trying to get all 20,000 rows by scrolling page by page. I have attached sample which i have tried.
created an array which will scroll to 73 row , 146 row 218 row and 289 row.var rowselec = [73,146,218,289];when i check logs its calling$(document).delegate("#cellSelectionGrid", "iggridvirtualrecordsrender", function(evt, ui) {only for row 289.
Application i am developing needs all 20,000 rows to search for a text in each td if a match is found i have to highlight individuals cells.
What is the best approach to get all rows(20,000) in virtualized grid.
Thank you for explaining this.
Virtualization feature is completely virtual, it only retains the rows which are into view. Once you scroll further than the 73th row, it will load the next chuck of row and dump the previous chuck.
From what I've understand you need to highlight the cells, which are matching some criteria.
My suggestion is to utilize the selection feature. It would take care to render the new cells with the selected style. And it can select cells which are not into the current view.
Attaching a sample so you can review it. Please let me know if this is helpful.