2013-11-25 50 views
0

我试图在点击导航器上的图标时添加/删除/编辑行。例如,如果我点击添加按钮,我想用我在colNames中设置的列来显示表单,但我不知道如何去做。我已阅读wiki http://www.trirand.com/jqgridwiki/doku.php?id=wiki:navigator,但我找不到如何使用我想要的列指定表单。这里是我的代码:jqGrid - 在导航器上添加,删除和编辑行

customGrid.js

function criaGrid(){ 

$("#grid").jqGrid({ 
    datatype: 'json', 
    url: 'dadosGrid.jsp', 
    jsonReader: {repeatitems: false, root: 'root'}, 
    pager: '#paginado', 
    rowNum: 10, 
    rowList: [10,20,30], 
    emptyrecords: "Não há registros.", 
    recordtext: "Registros {0} - {1} de {2}", 
    loadtext: "Carregando...", 
    pgtext: "Página {0} de {1}", 
    height: 250, 
    colNames:['Código','Nome', 'Ativo', 'Data Inclusão','Login','Email'], 
    colModel:[ 
     {name:'codigo',index:'codigo', width:80, sorttype:"int"}, 
     {name:'nome',index:'nome', width:120}, 
     {name:'ativo',index:'ativo', width:80, sorttype:"boolean"},  
     {name:'dataInclusao',index:'dataInclusao', width:120, sorttype:"date", datefmt: 'd-M-Y'}, 
     {name:'login',index:'login', width:80, sortable:false},  
     {name:'email',index:'email', width:150, sortable:false} 
    ], 
    multiselect: true, 
    viewrecords: true, 
    editurl:"someurl.php", 
    caption: "Área" 
}); 


$("#grid").jqGrid('navGrid','#paginado',{id:'edit',id:'add',id:'del',search:false,refresh:false}) 

$('edit').click(function(){ 
    $("#grid").jqGrid('editGridRow',"new",{height:250,reloadAfterSubmit:true}); 
}); 

}; 

回答

0

你只需要添加editable: true财产colModel您要编辑列。 $('edit').click事件句柄需要删除,因为navGrid将完成所有工作。

我建议你从另外colModel删除所有index属性,删除不存在的属性sorttype:"boolean"(见the documentation)。取而代之的是,将选项gridview: trueautoencode: true添加到jqGrid选项列表中并考虑将height: 250替换为height: "auto"是很好的做法。

+0

谢谢!有效。 – lucasdc

+0

@lucasdc:不客气! – Oleg

相关问题