2012-04-26 8 views

答えて

0

更新ボタンのCSSはリフレッシュが開始されます前に使用する必要があるあなたには、いくつかのアクションを行う必要がある場合ui-icon-refresh

はそうあなたが

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

のように、このCSSのカスタムコードを書くことができていますbeforeRefreshコールバック:

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

絶対別の実装が必要な場合はoあなたは、標準の[更新]ボタンを削除するにはrefresh: falseオプションの使用により、これを行うと、正確に元のように見えたカスタムボタンを追加するnavButtonAddを使用することができます(奇妙に聞こえるもの)$("#grid_id").trigger("reloadGrid");を呼び出すことはありませんFグリッドのリフレッシュ:

$("#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

+1

@justcurious:あなたは大歓迎です!私はあなたのリフレッシュプロセスの停止に関する問題を理解しています。あなたは 'beforeRequest'コールバックを使うことができます。コールバックからfalseを返すと、リフレッシュを止めることができます。たとえば、データのページングを使用し、ユーザーが列ソートをクリックした場合、リフレッシュのような同じ問題が発生する可能性があります。 'beforeRequest'の使い方は私にはこのような問題の解決策になるかもしれません。 2つのページャを持っていて、両方のページャにボタンを追加したいのであれば、 'navButtonAdd'を2回呼び出すだけです([回答](http://stackoverflow.com/a/8450272/315935)を参照)。 – Oleg

+0

sweet..thatはすばやい返信でした!両方のあなたのアイデアは良いです。ありがとう! – justcurious