복붙노트

[JQUERY] 새 열을 추가있는 jqGrid

JQUERY

새 열을 추가있는 jqGrid

해결법


  1. 1.동적으로있는 jqGrid에 열을 추가 할 수 없습니다. 당신은 colModel 하나 개의 열 이상을 필요로 전체 그리드를 다시해야합니다. 별도의 COLNAMES를 사용하는 경우, 배열의 크기가 너무 증가되어야한다. 당신은 기존의 그리드를 파괴하는 예를 들어 GridDestroy를 사용할 수 있습니다. jQuery.Remove 또는 jQuery.Empty의 사용 대신하는 것도 가능하다.

    동적으로있는 jqGrid에 열을 추가 할 수 없습니다. 당신은 colModel 하나 개의 열 이상을 필요로 전체 그리드를 다시해야합니다. 별도의 COLNAMES를 사용하는 경우, 배열의 크기가 너무 증가되어야한다. 당신은 기존의 그리드를 파괴하는 예를 들어 GridDestroy를 사용할 수 있습니다. jQuery.Remove 또는 jQuery.Empty의 사용 대신하는 것도 가능하다.

    업데이트 : GridUnload이 porpose 더 나은 것을 나에게 보인다. 나는 하나의 그리드를 다시하는 방법을 보여줍니다 작은 데모를 만들었습니다. 당신이 (당신이있는 jqGrid의 개발자 버전을 사용하는 경우) 또는 당신이있는 jqGrid 다운로드 페이지의 "사용자 정의" "Additinal 방법"을 체크 한 프로젝트에서 grid.custom.js을 포함하는지 확인해야 GridUnload 또는 GridDestroy 사용할 수있게합니다.

    2 업데이트 : 하나는 여기에서 다운로드 할 수 있습니다하는 addColumn 방법을 사용할 수 있습니다 (jQuery.jqGrid.addColumn.js 참조). 상기 방법은 베타 상 아직. 하나는 쇼 방법 (addColumnX.htm 예를 참조) 여기에 방법을 사용하는 몇 가지 데모를 찾을 수 있습니다.


  2. 2.단지 사용

    단지 사용

    $("#gridid").jqGrid('GridUnload');
    

    그것은 완전히 그리드를 언로드하고 새로운 열 및 데이터 다시로드 할 준비가 될 것입니다.


  3. 3.rownumbers : 사실, 과 rownumWidth : 25 (기본값)

    rownumbers : 사실, 과 rownumWidth : 25 (기본값)


  4. 4.당신은 단순히 새로운 열 모델을 설정하고 그리드를 다시로드 할 수 있습니다 :

    당신은 단순히 새로운 열 모델을 설정하고 그리드를 다시로드 할 수 있습니다 :

    var newColModel = $("#myGrid").jqGrid("getGridParam", "colModel").concat({ /* new column attributes */ });
    $("#myGrid").jqGrid("setGridParam", {colModel: newColModel}).trigger("reloadGrid");
    
  5. from https://stackoverflow.com/questions/4232038/jqgrid-add-new-column by cc-by-sa and MIT license