2
어떻게 모든 그리드의 데이터를로드 한 후 "readonly"로 셀 입력을 변경할 수 있습니까?jqgrid는 그리드가로드 된 후 읽기 전용으로 셀 입력을 변경합니다.
로드 된 행만이 셀을 읽기 전용으로하고 싶습니다. 새 행을 추가 할 때이 셀을 읽기 전용으로하고 싶지는 않습니다.
감사의 말을 전하고 싶습니다.
UPDATE :이 내 코드입니다
:
$("#Grid1").jqGrid(
{
editurl: "clientArray",
datatype: 'xmlstring',
datastr: '<%=_xml_string %>' ,
colNames:['','cell1','cell2', 'cell3'],
colModel:[
{name:'cell1',index:'cell1', hidden: true},
{name:'cell2',index:'cell2', width:150, editable:true, edittype:'text',sorttype:"int" ,
editoptions:
{
maxlength:5,
dataInit: function (elem)
{
$(elem).numeric(false);
$(elem).blur(function(event_)
{
});
},
dataEvents:
[
{
type: 'keydown',
fn: function(e)
{
var key = e.charCode || e.keyCode;
if(key == 113)
{
}
}
}
]
}
},
{name:'cell3',index:'cell3', width:150 , editable:true,sorttype:"text" ,
editoptions:
{
readonly: 'readonly' ,
dataInit: function (elem)
{
$(elem).attr("tabindex","-1");
}
}
}
],
height: '120px' ,
autowidth: true,
shrinkToFit: false,
beforeSelectRow: function(rowid, e)
{
if (required_field != rowid && required_field!="") return false;
else
{
if($(this).getGridParam('selrow') == rowid)
return false;
else
return true;
}
},
onSelectRow: function(id)
{
save_row(lastSel);
get_grid().editRow(id,false,'','','','','','','');
jQuery ('#' + id + _cell2').focus();
lastSel=id;
},
loadComplete: function()
{
var grid = $("#Grid1");
var ids = grid.jqGrid('getDataIDs');
for (var i=0;i<ids.length;i++)
{
var id_=ids[i];alert(id_);
grid.jqGrid('setCell',id_,'cell2','','not-editable-cell');
}
}
});
@Oleg : 감사합니다! 하지만 어떤 이유로 나를 위해 작동하지 않는 .. 내가 editurl 사용하고 있습니다 : "clientArray", 데이터 형식 : 'xmlstring', datastr : '<% = _ xml_string %>'및 dataInit : function (elem) 나는 $ (elem). 숫자 (거짓);. 나는 당신이 예제에서 쓴 것과 정확히 어떤 아이디어를 추가 했습니까? – user590586
@ user590586 :'dataInit' 안에'$ (elem) .numeric (false);'를 사용하려고했는데 모두 코드에서 완벽하게 작동했습니다. 일부 행에 'not-editable-row'클래스를 추가하면 편집 할 수 없습니다. 나는 당신이 "읽기 전용"으로 만들고자하는 셀을 이해하지 못합니다. 아마 당신은 갖고 싶은 "readonly"셀의 HTML 코드를 게시해야하고 코드를 jqGrid 셀 안에 어떻게 배치 할 수 있는지 보여 주어야합니다. – Oleg
@Oleg : 나는 정말로 당신의 도움을 호소합니다 !! 내 질문을 curretn 코드로 업데이트했습니다. – user590586