Categories | Question details Back To List | ||
dhtml grid In ihis code my grid filter is too slow please help me for the grid filter fast . my grid have 50 data among 50 data when I search the data it take more time to filter the data . please Give me reson why and also code for the filter to take few time for filter div id="left123" style="float:left; width:275px"> <div id="Plan_flt_box" onclick="(arguments[0]||window.event).cancelBubble=true;" onkeyup="filterByCode()"> <input type="text" id="txtitinerarycode" /> </div> <div id="22222"> Itenary Code : itenary Name :<span style="position:relative;left:17px"> <input type="text" id="txtitineraryname" style="width: 148px" /> </span> </div> </div> mygrid = new dhtmlXGridObject('gridbox'); var _js_prefix="../scripts/"; mygrid.setSkin("xp"); mygrid.init(); mygrid.enableAutoHeight(true); mygrid.enableAutoWidth(true);//SearchItinerary mygrid.imgURL=locationpath+'/Images/imgs/'; mygrid.loadXML(locationpath+"/LoadData.aspx?ICode=All&PageName=SearchItinerary" +'&Mode='+strSaveMethod); myDataProcessor = new dataProcessor(locationpath+"/SaveData.aspx?ICode="+reportId+"&PageName=Media"); // mygrid.setOnRowDblClickedHandler(doOndblClick); myDataProcessor.setVerificator(1) myDataProcessor.setVerificator(3,checkIfNotZero) myDataProcessor.setUpdateMode("off");//available values: cell (default), row, off //mygrid.setOnKeyPressed(onKeyPressed); mygrid.setOnRowDblClickedHandler(doOndblClick); myDataProcessor.init(mygrid); mygrid.setSizes(); mygrid.attachEvent("onXLS",function() { document.getElementById('rbanyone').disabled=true; document.getElementById('rball').disabled=true; //show loading message here // document.getElementById('divWait').style.display="inline"; }); function filterByCode() { var tVal = document.getElementById('Plan_flt_box').childNodes[0].value.toLowerCase(); var aVal = "";//document.getElementById("Type_flt").childNodes[0].value.toLowerCase(); for(var i=0; i< mygrid.getRowsNum();i++) { var tStr = mygrid.cells2(i,1).getValue().toString().toLowerCase(); //var aStr = mygrid.cells2(i,6).getValue().toString().toLowerCase(); if((tVal=="" || tStr.indexOf(tVal)==0) && (aVal=="" || aStr.indexOf(aVal)==0)) mygrid.setRowHidden(mygrid.getRowId(i),false) else mygrid.setRowHidden(mygrid.getRowId(i),true) } } Purushottam Dwivedi Impossible Is Temporary Answer posted by dhtxSupport on Mar 03, 2009 07:56 Try to use filterBy() method instead of custom fintering function. Please see more information here http://dhtmlx.com/docs/products/dhtmlxGrid/doc/articles/Data_filtering_search.html#grid_fsing |