우리는 jqgrid 4.3에서 아래 코드를 사용했습니다. 이제 4.13.6으로 업그레이드 중입니다. 내 그리드를 작성하는 동안free-jqgrid : getLocalRow는 free-jqgrid4.13.6에서 false를 반환합니다.
var grid = $("#myGrid").jqGrid('getRowData');
$.each(grid, function(key, value) {
selectedRow = key+1;
var rowData = $("#myGrid").jqGrid('getLocalRow', selectedRow);
});
내가 어떤 ID를 사용하고 있지 않다 ... 아래 코드는 4.3에서 일했지만, 4.13, 그것은 ... 어떤 도움을 거짓하시기 바랍니다 반환합니다. 데이터 유형 : json, rownumbers : true.
디버깅 할 때 각 행의 ID는 'jqg41', 'jqg42'등입니다 ... 그리고 때로는 'jqg61', 'jqg62'등입니다 ... 추가되는 임의의 숫자입니다 'jqg'
좀 더 코드 (그러나 완료 코드) 후
$grid.jqGrid({
datatype: 'json',
url: 'myUrl/byFileId.do?custId='+custId,
mtype: 'GET',
ajaxSubgridOptions: { async: false },
colNames:[ col1, col2 ...],
colModel:[
. . .
. . .
. . .
],
headertitles:true,
rowNum:999,
rowList:[],
pager: '',
records: 1000,
pgbuttons : false,
viewrecords : false,
pgtext : null,
pginput : false,
gridview:true,
ignoreCase:true,
rownumbers:true,
sortname: 'invdate',
viewrecords: true,
sortorder: 'desc',
multiselect: true,
caption: "Customer Search Result",
height: '100%',
editurl: 'clientArray',
autoencode: true,
loadonce: true,
multiselectWidth: 30,
width: rmtPageTitleWidth,
viewsortcols : [true,'vertical',true],
onSortCol: function (index, idxcol, sortorder) {
rowIdAndNoOfRowPair = [];
if (this.p.lastsort >= 0 && this.p.lastsort !== idxcol
&& this.p.colModel[this.p.lastsort].sortable !== false) {
$(this.grid.headers[this.p.lastsort].el).find(">div.ui-jqgrid-sortable>span.s-ico").show();
}
},
죄송 합니다만, 게시하는 코드는 절대 잘못되었습니다. 'key'가 rowid이면'key + 1 '이 아닙니다. 그것은 어떤 셸입니까? ** 선택된 ** 행의 데이터 또는 그리드의 모든 로컬 데이터를 가져와야합니까? ROWID를 지정하지 않는 이유는 무엇입니까? 어떤 데이터와 그리드를 사용합니까? 그런데 나는'customerId' 칼럼의 값을 rowid로 사용하도록 jqGrid에 알리는'customerId' 칼럼에'key : true' 속성을 설정하라는 제안으로 이전 질문에 대한 나의 대답을 시작했다. ** 당신이 설명해야 할 코드는 여전히 잘못되어 있습니다. 어떻게해야합니까 ** ** – Oleg
[article] (https://free-jqgrid.github.io/getting-started/index.html#the_first_grid), 어디 rowid 무엇인지 설명합니다. [그림] (https://free-jqgrid.github.io/getting-started/index.html#grid-internal-div) 및 아래 설명을 참조하십시오. – Oleg
@Oleg : jqgrid 4.3에서 'key'는 항상 0을 표시하지만 행의 ID는 '1'부터 시작합니다. 그 이유는 "key + 1"이었습니다. 이제 두 번째 질문에 대해 grid에 같은 id의 고객이 여러 명있을 수 있기 때문에 customer id를 key = true로 만들 수 없습니다. 각 행 (선택 및 선택되지 않은 선택)을 통해 데이터를 얻으면 자바 스크립트에서 해당 데이터를 논리에 적용한 다음 백엔드로 보낼 수 있습니다. 이제 왜 jqg <임의의 숫자로 행 ID를 생성하는지 궁금합니다. > – SKumar