/ / Angular UI Grid autouzupełnianie z ui-grid-cellnav - angularjs, angular-ui-grid

Angular UI Autouzupełnianie siatki z ui-grid-cellnav - angularjs, angular-ui-grid

Mam autouzupełnianie w mojej siatce interfejsu użytkownika, działa dobrze, ale po umieszczeniu dyrektywy ui-grid-cellnav klawiatura w górę iw dół nie działa w przypadku autouzupełniania.

<div class="grid nonProductiveTimeGrid" ui-grid="nonProductiveTimeGridOptions" ui-grid-resize-columns style="width: 100%;" ui-grid-edit ui-grid-cellnav ui-grid-auto-resize ui-grid-draggable-rows ui-grid-selection></div>

a kod kontrolera dla kolumny siatki to

var _columnsDefs = function (isLocked) {
var cols = [{
field: "ResponsibleParty",
displayName: "Responsible Party",
enableCellEdit: !isLocked,
editableCellTemplate: "<div><form name="inputForm"><input type="INPUT_TYPE" typeahead-append-to-body="true" ng-class=""colt" + col.uid" ui-grid-editor ui-grid-edit data-ng-model="MODEL_COL_FIELD" name="label" maxlength="100" required validate-required-cell data-typeahead="responsibleParty for responsibleParty in grid.appScope.responsibleParties | filter:$viewValue | limitTo:8 " /></form></div>",
width: "20%"
}];
}

Odpowiedzi:

0 dla odpowiedzi № 1

Nie masz modułu obsługi dla typeahead-on-select. Zmień to na

"data-typeahead-on-select="grid.appScope.typeaheadSelected(row.entity, $item)" " +

i dodaj funkcję

$scope.typeaheadSelected = function(entity, item) {
entity.name = item.name; // or whatever you want to do
//console.log(item);
}

Musiałem również skomentować tę linię, aby to zrobićdziała, ale potem stracił automatyczne zaznaczanie całego tekstu po fokusie, co oznacza, że ​​musisz dwukrotnie kliknąć, a następnie zaznaczyć cały tekst (myszą lub Ctrl + A), aby go edytować. Nie wiem dlaczego, może istnieje obejście tego problemu. Miałem ten sam problem z moim typem w sieci.

//"ui-grid-edit ui-grid-editor " +

W każdym razie po tych zmianach mogłem dwukrotnie kliknąć, aby edytować wartość, wybrać stan za pomocą klawiszy strzałek i zaktualizować jednostkę.