jquery - jqGrid Refresh From Server Issue -
i have struts2 jqgrid page loads fine. when navigator refresh button clicked want reload grid server.
<sjg:grid altrows="false" id="gridtable" datatype="json" editurl="%{editurl}" filter="true" filteroptions="{stringresult:true}" gridmodel="gridmodel" gridview="true" height="600" href="%{remoteurl}" loadonce="true" navigator="true" navigatoradd="%{editpermission}" navigatoraddoptions="{ closeafteradd:false, closeonescape:true, reloadaftersubmit:true, addcaption:'add record'}" navigatordelete="false" navigatoredit="%{editpermission}" navigatoreditoptions="{ closeafteredit:false, closeonescape:true, aftersubmit:function(response, postdata) { return iserror(response.responsetext); } }" navigatorrefresh="true" navigatorsearch="false" oncompletetopics="loadcomplete" onselectrowtopics="rowselect" oneditinlinebeforetopics="beforeformload" pager="true" pagerbuttons="true" rowlist="25,50,100" rownum="25" rownumbers="true" > i have following bind set datatype json when refresh button clicked.
$("#refresh_gridtable").bind("click", function(){ $("#gridtable").jqgrid("setgridparam", {datatype: 'json'}); return [true]; }); however, when click refresh button reloads data server on every other click. if perform client-side sort on specific column click refresh not reload server first click, second click refresh server without sort (the sort icons still visible @ point @ top of column), third click not hit server apply sort.
how refresh reload server each time, apply existing sort/filter fields?
the solution depends little underlying jqgrid use. if use free jqgrid 4.9 can use additional option of navgrid: reloadgridoptions: { fromserver: true }.
if use old version of jqgrid can use callback beforerefresh reset datatype "json" directly before reloading. don't use struts2 myself. don't know can specify callback beforerefresh
alternatively can use navigatorrefresh="false" remove standard refresh button navigator bar , use navigatorextrabuttons seems replacement navbuttonadd. if correctly understand option can specify free code of onclick, need. can use icon: "ui-icon-refresh" make custom button looks standarda refresh button. inside of onclick can set datatype: 'json' , trigger "reloadgrid".
Comments
Post a Comment