私は編集可能なグリッドを持っています。 2つの列はItemCodeとQuantityです。ユーザーが数量を入力してダウンキーを押すと、次の行でItemCodeセルのフォーカスを次の行に設定します。このイベントリスナーを追加してセルに移動しましたが、すぐに編集モードに切り替わり、選択されたモードに切り替わります。セルを編集モードにしておく方法を教えてください。角度UIグリッドは、ナビゲート時にセルにフォーカスを設定します
gridApi.cellNav.on.navigate($scope, function (newRowcol, oldRowCol) {
$scope.$broadcast('uiGridEventEndCellEdit');
if (oldRowCol != null &&
oldRowCol.col.colDef.name == 'quantity' &&
oldRowCol.row != newRowcol.row) {
newRowcol.row.grid.api.cellNav
.scrollToFocus(newRowcol.row.entity,
newRowcol.row.grid.options.columnDefs[1]);
}
});
UPDATE:私は上記のコメントのよう
$scope.gridOptions.columnDefs = [
{
name: 'itemCode',
displayName: 'Part #',
editableCellTemplate: $scope.itemCodeEditableTemplate,
width: 150,
cellTooltip: function (row, col) {
return row.entity.itemCode
}
},
{
name: 'quantity', displayName: 'Qty', type: 'number', width: 60,
cellTooltip: function (row, col) {
return row.entity.quantity
}
}
]
これは、角度uiグリッドのバグだと思う。私がバグとして提起したとき、それは固定されていなかったが、回避策の詳細は一切なかった。 https://github.com/angular-ui/ui-grid/issues/4812と私のSOの投稿(http://stackoverflow.com/questions/33991169/scrolltofocus-to-cell-with-enablecelleditonfocus-true-does)を参照してください。 -not-make-the-cell-edi –
特定の値を指定して特定のセルをタブで移動するときに、次の行のフィールドにジャンプしたい場合の回避策がありますが、移動するためにダウンキーを使用しているあなたの場合。基本的には、列定義内にenableCellEdit:falseを指定して偽のスペーサー列を作成する必要がありました。ユーザーにセル間のタブを尋ねることができる場合は、列の定義を投稿してください。可能な答えとして回避策を共有できます。 –
OK。お返事をありがとうございます。私はhttps://www.ag-grid.com/を試してみて、先読みのためのUI-Gridのための回避策が既にあるので、それがどうなるか見てみよう。私は仕事に終わるつもりだどこでも。 ag-gridがうまくいかない場合は、回避策について質問します – Asagohan