0

treegrid の jqgrid で、expandColumn:'name' 列のセルに表示されている値をクリックして編集すると、セル内のコンテンツの html が取得されます。

私が得るhtmlコンテンツは次のとおりです:-

<div class="tree-wrap tree-wrap-ltr" style="width: 54px;"><div style="left: 36px;" class="ui-icon ui-icon-radio-off tree-leaf treeclick"></div></div><span class="cell-wrapperleaf">Sub-subtask1</span>

私の実際の値は次のとおりですが:- Sub-subtask1

私のグリッド設定は以下の通りです:-

jQuery("#tree").jqGrid({
        url:'json/jsonSamplePots.json',
        datatype: "json",
        mtype:'GET',
        colNames: ["id", "no.", "name", "col1", "col2", "col3", "col4", "col5", "col6", "col7", "col8", "col9", "col10", "col11", "col12", "col13", "col14", "col15", "col16"],
        colModel: [
            {name:'id',width: 30, editable:false, align:"right",sortable:false, hidden: true, key: true},
            {name:'no',width:80, editable:false, align:"left", sortable:true, sorttype:"int"},
            {name:'name', width:150, editable:true, sortable:true, sorttype:"text"},
            {name:'col1', width:80, editable:true, align:"right", sortable:true, sorttype:"int"},
            {name:'col2', width:80, editable:true, align:"right", sortable:true, sorttype:"date"},
            {name:'col3', width:80, editable:true, align:"right", sortable:true, sorttype:"date"},
            {name:'col4', width:80, editable:true, align:"right", sortable:true, sorttype:"int"},
            {name:'col5', width:80, editable:false, align:"right", sortable:true, hidden: true, sorttype:"date"},
            {name:'col6', width:80, editable:false, align:"right", sortable:true, hidden: true, sorttype:"date"},
            {name:'col7', width:80, editable:false, align:"right", sortable:true, hidden: true, sorttype:"int"},
            {name:'col8', width:80, editable:false, align:"right", sortable:true, hidden: true, sorttype:"date"},
            {name:'col9', width:80, editable:false, align:"right", sortable:true, hidden: true, sorttype:"date"},
            {name:'col10', width:80, editable:false, align:"right", sortable:true, hidden: true, sorttype:"int"},
            {name:'col11', width:120, editable:true, align:"left", sortable:true, sorttype:"text"},
            {name:'col12', width:80, editable:true, align:"left", sortable:true, sorttype:"text"},
            {name:'col13', width:80, editable:true, align:"right", sortable:true, hidden: true, sorttype:"text"},
            {name:'col14', width:80, editable:false, align:"right", sortable:true, hidden: true, sorttype:"text"},
            {name:'col15', width:300, editable:true, align:"left", sortable:true, sorttype:"int"},
            {name:'col16', width:80, editable:true, align:"right", sortable:true, sorttype:"int"},
        ],
        rowNum:10,
        rowList:[10,20,30],
        treeGridModel:'adjacency',
        treeGrid: true,
        cellEdit: true,
        ExpandColumn:'name',
        cellsubmit : 'clientArray',

});
4

2 に答える 2

1

セル編集の代わりにインライン編集を使用する必要があります。TreeGrid をセル編集と一緒に使用することはできません。少なくとも、で宣言した「名前」列の編集を使用することはできません。ExpandColumn

于 2012-04-02T12:43:31.297 に答える
0

getRowData を使用してセルの値を取得しているようです。セルが編集モードの場合、getRowData は実際の値ではなく、セルの HTML を返します。セルを編集モードにする前に、getRowData を呼び出す必要があります。

beforeSelectRow イベントを使用して、編集モードにレンダリングされる前に行のデータをキャッシュしてみてください。

于 2012-02-20T13:22:06.247 に答える