2013-09-26 3 views
3

첫 번째 열이 고정 된 표가 있습니다. 가로 스크롤을 움직이면 표 머리글의이 열은 고정되지만 격자의 본문에서는 모든 열을 수평으로 이동할 수 있으며 첫 번째 열은 고정되지 않습니다. 저는 제 코드를 백 번 넘겼습니다. 괜찮습니다. 내 프로젝트에 다른 CSS 또는 자바 스크립트가 없으며 IE8, Firefox 및 Chrome에서 발생합니다. 저는 jQgrid의 최신 버전을 사용하고 있습니다.고정 된 열의 jqGrid 오류

 
jQuery("#single").jqGrid({ 
        data : mydata, 
        datatype : "local", 
        height : 115, //Define el alto total del listado 
        width : 650, //Define el ancho total del listado 
        colNames : [ 'Index', 'Date', 'Code', 'Amount' ], //Nombres de las cabeceras de las columnas. 
        colModel : [ { 
         name : 'item_id', // Prop. name del modelo de datos 
         index : 'item_id', 
         width : 100, 
         sorttype : 'int', 
         align: 'center', 
         frozen:true 
        }, { 
         name : 'item_date', 
         index : 'item_date', 
         width : 450, 
         formatter : 'date', 
         formatoptions : { 
          newformat : 'd/M/Y' 
         }, 
         datefmt : 'd/M/Y', 
         align: 'center' 

        }, { 
         name : 'item_cd', 
         index : 'item_cd', 
         width : 400 
        }, { 
         name : 'amount', 
         index : 'amount', 
         width : 400, 
         formatter: "integer", //Define el tipo de dato. Imprescindible cuando queremos crear una celda de totales. 
         align: 'right',  //Alineación del texto dentro de la celda. 
         editrules : { 
          edithidden : true 
         }, 
         editoptions : { 
          /*disabled : 'disabled',*/ 
          size : '10', 
          maxlength : '8', 
         } 
        } ], 
        rowNum : 10, 
        rowTotal : 2000, 
        rowList : [ 5, 10, 20, 30 ], 
        loadonce : true, 
        mtype : "GET", 
        rownumbers : false, // Mostrar/ocultar el nº de fila. 
        rownumWidth : 40, // Ancho de la columna que muestra el nº de fila. 
        gridview : true, 
        pager : '#psingle', //Id de la capa que contiene el paginador. 
        sortname : 'item_id', // Columna inicial sobre la que realiza la ordenación. ini 
        viewrecords : true, // Muestra/Oculta el mensaje de: "Mostrando 1 de..." 
        sortorder : "desc", 
        editurl : './listado.html', 
        caption : "Tabla de datos editables", //Titulo del listado. 
        align: 'center', 
        //shrinkToFit : true, 
        footerrow : true, // Activa el pie del listado. Imprescible si se quiere visualizar. 
        userDataOnFooter : true, 
        edit : { 
         top : '100px', 
         left : '100px', 
         addCaption : "Add Record", 
         editCaption : "Modificar registro", 
         bSubmit : "Modificar", 
         bCancel : "Cancelar", 
         bClose : "Cerrar", 
         saveData : "Data has been changed! Save changes?", 
         bYes : "Yes", 
         bNo : "No", 
         bExit : "Cancel" 
        }, 
       }); 

       /* Botones de edición */ 
       jQuery("#single").jqGrid('navGrid', '#psingle', { 
        del : true, 
        add : true, 
        edit : true 
       }); 

       /* Activa la funcionalidad de las columnas fijas. Se usa en combinación con el atributo "frozen:true" 
        en la columna. */ 
       jQuery("#single").jqGrid('setFrozenColumns'); 

답변

0

문제의 이유있는 jqGrid의 setFrozenColumns 방법에 버그가 :

여기 내 코드입니다. datatype : "local"에서 jqGrid를 채우거나 setFrozenColumns을 호출하기 전에 격자가 이 이미 데이터로 채워져있는 경우 setFrozenColumns 메서드가 올바로 작동하지 않습니다. 해결 방법으로 직접jQuery("#single").jqGrid('setFrozenColumns'); 후 라인

jQuery("#single").triggerHandler("jqGridAfterGridComplete"); 

를 포함 할 수 있습니다. 문제를 여러 번 설명했습니다. 포스트 here 이후 버그는 github의 jqGrid 코드에서 수정되었습니다 (수정 here 참조). 따라서 새로운 버전의 jqGrid (현재 4.5.2 버전 이상)를 사용하면 나중에이 행을 제거 할 수 있습니다.

+0

대단히 감사합니다 !!!! 나는이 문제를 해결할 무언가를 찾고 있었지만 결코이 대답을 찾지 못했고 나는 그것에 대해 매우 걱정했다. Sincerenly, 대단히 감사합니다. – cescari

+0

@cescari : 환영합니다! 그런데 오랫동안 같은 문제가 있었지만, 전에는'_complete' 함수를 호출해야했습니다 (거의 2 살인 [대답] (http://stackoverflow.com/a/8620574/315935) 참조). 문제가 지금 해결되면 'jQuery ("# single"). triggerHandler ("jqGridAfterGridComplete")는 당신이 [받아 들일 수있는] 문제를 해결합니다. (http://meta.stackexchange.com/a/5235/147495) 대답. – Oleg

+0

jqGrid에서 마지막 열을 고정 열로 사용할 수 있습니까? @Oleg –

관련 문제