jQGrid, como tornar uma coluna editável na checkbox de diálogo add mas não durante as edições (inline)

Eu tenho um jQGrid com uma coluna que eu só quero ser editável ao adicionar uma nova linha.

Já vi exemplos de como fazer isso quando edições e acréscimos estão acontecendo em um diálogo, mas existe uma maneira de fazer isso com a edição em linha?

Eu tentei usar grid.setColProp () em beforeShowForm :, mas isso não funciona (a coluna permanece somente leitura e não está presente na checkbox de diálogo add).

Exemplo de ativação / desativação da coluna baseada em diálogo:
http://www.ok-soft-gmbh.com/jqGrid/CustomFormEdit.htm

Porque você usa o exemplo das minhas respostas antigas ( isto e isso ), eu sinto que devo responder também à sua pergunta.

No antigo exemplo, todos os campos, que podem ser modificados durante as checkboxs de diálogo Adicionar ou Editar, têm a propriedade editable:true . Os campos que devem ser mostrados somente na checkbox de diálogo Adicionar serão ocultados dentro do manipulador de events beforeShowForm . Da mesma forma, podemos alterar temporariamente alguns campos para editable:false antes da chamada do método editRow e redefinir de volta para editable:true imediatamente após a chamada:

 onSelectRow: function(id) { if (id && id !== lastSel) { grid.jqGrid('restoreRow',lastSel); var cm = grid.jqGrid('getColProp','Name'); cm.editable = false; grid.jqGrid('editRow', id, true, null, null, 'clientArray'); cm.editable = true; lastSel = id; } } 

Você pode ver isso ao vivo aqui .

UPDATE: jqGrid grátis permite definir editable como function de callback. Veja o artigo da wiki . Permite tornar a coluna editável em algumas linhas e não editável para outras linhas.