2012-04-26 188 views

回答

0

的刷新按钮的CSS是ui-icon-refresh

所以你可以写你的自定义代码这个CSS像

jQuery('.ui-icon-refresh').click(function(){ 
    // do your work 
}); 
17

如果你需要做一些动作之前刷新将被启动,你应该使用beforeRefresh回调:

$("#grid_id").jqGrid('navGrid', '#gridpager', { 
    beforeRefresh: function() { 
     // some code here 
    } 
}); 

如果您需要绝对的另一个实现o ˚F网格刷新,你不会打电话$("#grid_id").trigger("reloadGrid");(这听起来很奇怪),你可以通过refresh: false选项删除标准刷新按钮的使用做到这一点,利用navButtonAdd添加自定义按钮,长相酷似原来的一个:

$("#grid_id").jqGrid('navGrid', '#gridpager', {refresh: false}); 
$("#grid_id").jqGrid('navButtonAdd', "#gridpager", { 
    caption: "", title: "Reload Grid", buttonicon: "ui-icon-refresh", 
    onClickButton: function() { 
     alert('"Refresh" button is clicked!'); 
    } 
}); 
+0

谢谢!我也需要它。即使我将** cloneToTop **设置为_true_,这也不会将图标克隆到顶部导航栏。我在网格上自定义保存实现,并在外部按钮单击时将所有更改推送到服务器。当他们尝试使用刷新图标重新加载网格时,我需要此实现来警告用户任何未保存的更改(并且可能会停止_refresh_,具体取决于响应)。我没有得到任何选择** beforeRefresh **函数停止刷新网格...奇怪! – justcurious 2012-04-26 18:20:40

+1

@justcurious:不客气!我了解您停止刷新过程的问题。你可以做的是使用'beforeRequest'回调。如果你从回调中返回false,你可以停止刷新。例如,如果您使用分页数据,并且用户单击列分类,则可能会出现与刷新相同的问题。 'beforeRequest'的用法在我看来可能是这类问题的解决方案。如果你有两个寻呼机,并且想要给这两个寻呼机添加一些按钮,你应该只需调用'navButtonAdd'两次(见[答案](http://stackoverflow.com/a/8450272/315935))。 – Oleg 2012-04-26 18:26:06

+0

甜..这是一个快速回复!你的想法都很好。谢谢! – justcurious 2012-04-26 18:41:40