2
我如何更改单元格输入到“只读”后我加载所有网格的数据?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”,datatype:'xmlstring',datastr:'<%= _ xml_string%>',并且在dataInit:function(elem) (ELEM).numeric(假);.我完全加了你在例子中写的东西..任何想法? – user590586 2011-03-15 13:11:18
@ user590586:我尝试在'dataInit'里面使用'$(elem).numeric(false);'在我的代码中完美工作。如果我将'not-editable-row'类添加到某些行,则它们不可编辑。我不明白你想要哪个单元格“只读”。也许你应该只发布你想要的“只读”单元的HTML代码,并展示如何将代码放置在jqGrid单元格内。 – Oleg 2011-03-15 14:55:09
@ Oleg:我真的很喜欢你的帮助!我用curretn代码更新了我的问题。 – user590586 2011-03-15 16:32:25