Jquery 重置按钮正在刷新Jqgrid中的过滤条。?
我在重置中有一个问题,正如您看到的,我已将状态默认设置为活动,并且只能选择一条记录,选择记录后,用户可以单击添加WO 但当点击重置按钮时,整个状态栏都会改变 我还将dafaultvalue设置为ACTIVE ALL。。!! 当状态重置时,我必须保持激活状态。。!!请帮帮我Jquery 重置按钮正在刷新Jqgrid中的过滤条。?,jquery,jquery-ui,jqgrid,Jquery,Jquery Ui,Jqgrid,我在重置中有一个问题,正如您看到的,我已将状态默认设置为活动,并且只能选择一条记录,选择记录后,用户可以单击添加WO 但当点击重置按钮时,整个状态栏都会改变 我还将dafaultvalue设置为ACTIVE ALL。。!! 当状态重置时,我必须保持激活状态。。!!请帮帮我 function initJqGridSearchSubProject(table,pager,msg,loadSelID,caption,chkMrk ){ $(table).empty(); $(table).G
function initJqGridSearchSubProject(table,pager,msg,loadSelID,caption,chkMrk ){
$(table).empty();
$(table).GridUnload();
var mygrid =jQuery(table).jqGrid({
datatype: "local",
data:msg,
width: 1240,
scrollOffset:0,
height: 250,
colNames:['ID','PID','Project Folder Name','Sub Project Name','Responsible','Status','Last Updated On'],
colModel:[
{name:'id',index:'id',hidden:true, width:5, sorttype:"int", editable: false,resizable:false},
{name:'pid',hidden:true, width:5, sorttype:"int", editable: false,resizable:false},
{name:'projectFolderName', width:250, editable: true,formatter:'tsLinks'},
{name:'subProjectName', width:250, editable: true,formatter:'subProjectLinks'},
//{name:'eCNNumber', width:150, editable: true},
{name:'responsible', width:200, editable:false,resizable:false},
{name:'status', width:100,editable: true,stype:'select',edittype:"select",resizable:false,searchoptions:{defaultValue:"ACTIVE"},editoptions:{value:"ACTIVE:ACTIVE;INACTIVE:INACTIVE;DELETED:DELETED",readonly:false},editrules:{edithidden:false}},
{name:'lastUpdatedOn', width:200,editable: false,resizable:false,sorttype:'date',formatter:'date',formatoptions:{ srcformat: 'M d y H:i:s', newformat: 'd M y h:i A' }}
],
pager: pager,
rowNum:200,
rowList:[200,400,600,1000],
//rowTotal:2000,
//loadOnce:true,
//rownumbers:true,
gridview : true,
sortname: 'lastUpdatedOn',
viewrecords: true,
sortorder: "desc",
toppager:true,
multiselect:true,
singleselect: false,
//multiboxonly:true,
//toolbar: [true,'both'],
caption:caption,
hidegrid: false,
gridComplete:function(id){
//$(chkMrk).hide();
//alert('grid complete');
},
beforeSelectRow: function(rowid, e)
{
// reset check box selection only when user clicks on another checkbox
if($(e.target).is("input:checkbox"))
{
// reset/clear other checkboxes selection before making a latest clicked row's checkbox as selected
jQuery(table).jqGrid('resetSelection');
}
// Code To Disable Check Box Selection When User Selects by Clicking on A Row
return $(e.target).is("input:checkbox");
//return(true);
}
});
jQuery(table).jqGrid('navGrid',pager,{del:false,add:false,edit:false,search:false,refresh:true,cloneToTop:true,afterRefresh:function(){}},{},{},{},{});
jQuery(table).jqGrid('navButtonAdd', table+ '_toppager_left',{caption:"Add WO", buttonicon:"ui-icon ui-icon-plus",id:"SUBPROJID", onClickButton: function(){},position:"first",title:"Add WO"});
您所做的是在
searchoptions
中设置了defaultValue
选项,而不是在editoptions
中。你只需要在那里添加相同的内容。只需尝试更改status
列的定义,如下所示:
{name:'status', width:100,editable: true,stype:'select',edittype:"select",
resizable:false,searchoptions:{defaultValue:"ACTIVE"},
editoptions:{value:"ACTIVE:ACTIVE;INACTIVE:INACTIVE;DELETED:DELETED",
readonly:false, defaultValue:"ACTIVE"},editrules:{edithidden:false}},
更新:
要调用事件处理程序内部的行,可以执行以下操作:
jQuery(table).jqGrid('navGrid',pager,
{ edit:false,view:false,add:false,del:false,search:false,
beforeRefresh: function(){
alert('Here');
jQuery(table).jqGrid('setGridParam',{datatype:'json'}).trigger('reloadGrid');
}
});
最后得到了结果,我只是在reset button函数中添加了triggerToolbar()
jQuery(table).jqGrid('navGrid',pager,{del:false,add:false,edit:false,search:false,refresh:true,cloneToTop:true,afterRefresh:function(){$(table)[0].triggerToolbar();}},{},{},{},{});
现在它工作得很好 我仍然遇到同样的问题…我认为这与重置有关..我们是否应该声明任何函数..???我们可以设置defaultValue:ACTIVE in reset button..?我不这么认为。当
refresh
设置为true
时,工具栏上会出现一个重置按钮。单击该按钮时,将执行触发器(“重新加载网格”)
,搜索参数将被清除。如果需要在开始刷新之前执行一些操作,则应在刷新之前使用回调:$(“#网格id”).jqGrid('navGrid','gridpager',{
beforefresh:function(){
//此处的一些代码
}
})
否则您应该设置刷新:false
并使用您自己的自定义按钮。是否要删除状态行中的搜索选项?