1

問題が発生しました。次の jqgrid があります。

grid.jqGrid({
    datatype: "xml",
    url:'../Controladores/cPedidos.php?action=lpp',
    mtype: 'POST',
    colNames:['FECHA','PROVEEDOR','USUARIO'],
    colModel:[
        {name:'fecha_compra',index:'fecha_compra',width:120, sorttype: 'date',
            formatter: 'date', formatoptions: { srcformat: 'm/d/Y H:i', newformat: 'd/m/Y H.i'} },
        {name:'nombre',index:'nombre',editable: false, width:560},
        {name:'usuario_id',index:'usuario_id',width:100, editable: false}

    ],
    rowNum:100,
    rowList:[50,100,200],
    pager: '#paginacion',
    gridview:true,
    rownumbers:true,
    ignoreCase:true,
    sortname: 'fecha_compra',
    viewrecords: true,
    sortorder: "desc",
    caption:"Pedidos",
    height: "100%",
    subGrid : true,
    subGridUrl: '../Controladores/cPedidos.php?action=lac',
    subGridModel: [{ name  : ['Codigo','Cantidad','Articulo','Estado','Rubro','Observaciones','Fecha Recibido','Usuario'], 
        width : [50,50,450,60,60,150,0,0] }],
    ondblClickRow: function(id, ri, ci) {
        // edit the row and save it on press "enter" key
        grid.jqGrid('editRow',id,true,null,null, 'clientArray');
    },
    onSelectRow: function(id) {
        if (id && id !== lastSel) {
            // cancel editing of the previous selected row if it was in editing state.
            // jqGrid hold intern savedRow array inside of jqGrid object,
            // so it is safe to call restoreRow method with any id parameter
            // if jqGrid not in editing state
            if (typeof lastSel !== "undefined") {
                grid.jqGrid('restoreRow',lastSel);
            }
            lastSel = id;
        }
    }
}).jqGrid('navGrid','#pager',{add:false,edit:false},{},{},myDelOptions,{multipleSearch:true,overlay:false});

メイン グリッドの日付を dd/mm//yy (FECHA) にフォーマットしています。今度は、「fecha recibido」のサブ グリッドにそれを行う必要があります。フォーマッター コードを配置する方法がわかりません。

どうすればそれができますか?

4

1 に答える 1

2

subGridModelサブグリッドの作成に使用します。最も単純なサブグリッドのみを作成するために制限された可能性を使用します (ドキュメントを参照してください)。サブグリッドにフォーマッターが必要な場合は、より柔軟な方法を使用する必要があります: Subgrid as Grid

このような subgid の実装は非常にシンプルで柔軟性があります。subGridRowExpanded使用法ではなく、メイン グリッドにコールバックを実装する必要がありますsubGridModel。ユーザーが拡張ボタン (「+」) をクリックすると、サブグリッド jqGrid が拡張行の下に空の行を作成するのを確認できます。他のグリッド (サブグリッド) を含む任意の情報配置できる空の<div>要素を作成する場合。あなたがする必要があるのは、いくつかのユニークな属性を持つ新しい要素を作成し、jqGrid が以前に作成した空の要素の中に要素を配置することだけです。通常、コールバックの最初のパラメーターとして取得するid に基づいてテーブルを構築します。<table>id<table><div>id<div>subGridRowExpanded

私の古い回答で見つけることができるコールバックの最も単純な実装。ここで見つけることができる別の例。このような実装の例は、ドキュメントで見つけるか、Web で検索するか、stackoverflow で"subGridRowExpanded"テキストを検索してください。

于 2013-04-12T11:14:08.863 に答える