2013-10-23 3 views
1

jqGrid의 호출기에서 기본 새로 고침 단추를 설정하여 현재 페이지를 새로 고치는 방법을 찾으려고 꽤 많은 시간을 보내고 있지만 운이 없습니다.jqGrid 기본 새로 고침 단추를 사용하여 현재 페이지 새로 고침

여기에 짧은 나의 그리드입니다 : 내가 먼저 이외의 다른 페이지에있어 및 새로 고침을 칠 때마다

$grid = $("#schedule"); 
var last_selected_row; 
$grid.jqGrid({ 
    url:'xtras/schedule.php', 
    editurl:'xtras/schedule.php', 
    datatype: "json", 
    mtype:'GET', 
    colModel:[ 
     ................................. 
    ], 
    height: "100%", 
    minWidth: 900, 
    rowNum:15, 
    rowList:[10,15,20,30,50,100], 
    viewrecords: true, 
    sortname:"ID", 
    sortorder: "desc", 
    pager: '#schedule_pager', 
    caption:"Snapper Release Schedule", 

    loadonce:false, 
    ajaxGridOptions: {cache: false}, 

    grouping:true, 
    groupingView : { 
     groupField : ['Date'], 
     groupColumnShow : [true], 
     groupOrder: ['desc'], 
     groupDataSorted : true 
    }, 

    gridview: true, 

    ondblClickRow: function (row_id) { 
     if(row_id != null) { 
      if(row_id !== last_selected_row) { 
       jQuery('#schedule').jqGrid('restoreRow',last_selected_row); 
       jQuery('#schedule').jqGrid('saveRow',row_id); 
       jQuery("#schedule").jqGrid('editRow',row_id, true, null, 
        function(){ $("#schedule").trigger("reloadGrid", [{current: true}]); }, 
        'xtras/schedule.php', 
        null,{},{},{} 
       ); 
       last_selected_row = row_id; 
      } else { 
       last_selected_row=row_id; 
      } 
     } 
    } 
}); 

$grid.jqGrid('setGroupHeaders', { 
    useColSpanStyle: true, 
    groupHeaders:[ 
     {startColumnName: 'Date', numberOfColumns: 11, titleText: '<em>Main Info</em>'}, 
     {startColumnName: 'Sales Text', numberOfColumns: 4, titleText: '<em>Deadlines</em>'} 
    ] 
}); 

$grid.jqGrid('navGrid','#schedule_pager',{edit:false,add:false,del:false},{},{},{},{}); 

지금이 검색, 호출기에서 새로 고침과 매김 - 그것은 첫 번째 페이지로 다시로드합니다. 현재 페이지를 다시로드하는 방법 (내가 다시로드 그리드를 실행할 때, 나는 [{current: true}]를 사용하지만, 내가 설정하는 방법은 새로 고침 버튼을 기본?)

답변

5

당신은 필요 단지 navGridrefreshstate: "current" 옵션 사용 : 당신이 사용하는 경우, 그런데

$grid.jqGrid("navGrid", "#schedule_pager", 
    {edit: false, add: false, del: false, refreshstate: "current"} 
); 

을 내가 afte 그리드를 다시로드해야하므로 기본적으로

$.extend($.jgrid.nav, { 
    edit: false, 
    add: false, 
    del: false 
    refreshstate: 'current' 
}); 
... 
$grid.jqGrid("navGrid", "#schedule_pager"); 
+0

: navGrid은 대부분 "검색"당신이 navGrid의 기본값을 변경하고 navGrid 이후 간단하게 전화를 사용할 수있는 버튼을 "새로 고침"으로 호출기를 만들 수 있습니다 그것은로드 되었습니까? 첫 번째 새로 고침 후 페이지가 1과 같지 않을 것입니다 (이전에 5 일 이전에도 불구하고?) – Elen

+0

@Elen : 죄송합니다. 나는 당신의 질문을 오해 한 것 같습니다. [refreshGate] (http://www.trirand.com/jqgridwiki/doku.php?id=wiki:navigator#parameters)의'refreshstate : "현재"옵션을 사용하면됩니다 :'$ grid.jqGrid ("navGrid ","# schedule_pager ", {편집 : 거짓, 추가 : 거짓, 델 : 거짓, refreshstate :"현재 "}); ' – Oleg

+0

예! 나는 그것이 단순해야한다고 생각했다. 나는 문서를 살펴 봤지만 분명하지는 않다. navGrid ('# gridpager', {parameters} ... parameters - 아래에 정의 된 배열 배열 prmEdit, prmAdd, prmDel, prmSearch, prmView' – Elen