カスタム セル テンプレートを使用して UI グリッドJquery Datepicker
を追加しようとしています。Angularjs
date
からを選択すると、読み込みが完了すると、そのそれぞれのセルで機能が動作しませんJquery date picker
。UI-Grid
JQuery date picker
カスタムディレクトリのDOM要素を強制的に削除しようとしましたが、うまくいきませんでした。
$scope.editableCellTemplateFrom = '<div ui-grid-editor><form name="inputForm" ><input type="text" readonly data-ng-model="row.entity.validFrom" extdatepicker /></form></div>' ;
customdirectives.directive('extdatepicker', function (uiGridConstants,$timeout) {
return{
restrict: 'A',
link: function(scope, element, attrs, Ctrl) {
element.datepicker({
dateFormat: 'dd/mm/yy',
changeMonth: true,
changeYear: true,
onSelect: function(d,i){
$timeout(function(){
scope.row.isDirty = true;
scope.row.entity.validFrom = d;
element.parent().parent().removeAttr("aria-selected");
element.parent().parent().find('div').removeClass("ui-grid-cell-contents-hidden ui-grid-cell-focus");
element.parent().remove();
//scope.row.grid.api.rowEdit.setRowsDirty([scope.row.entity]);
if (!scope.row.grid.api.rowEdit.dirtyRows ){
scope.row.grid.api.rowEdit.dirtyRows = [];
}
scope.row.grid.api.rowEdit.dirtyRows.push(scope.row.entity);
//scope.row.grid.api.edit.raise.afterCellEdit(scope.row.entity, scope.col.colDef);
scope.row.grid.api.edit.raise.cancelCellEdit(scope.row.entity, scope.col.colDef);
//scope.row.grid.api.edit.raise.cancelCellEdit(scope.row.entity, scope.col.colDef);
//scope.row.grid.api.core.notifyDataChange(uiGridConstants.dataChange.EDIT);
//scope.row.grid.api.core.notifyDataChange( uiGridConstants.dataChange.COLUMN );
scope.row.grid.api.core.raise.columnVisibilityChanged( scope.col);
scope.$apply();
scope.row.grid.api.core.refresh();
//endEdit
},1000);
}
});
}
}
});
が に値をロードしたui-grid
後に、機能を有効化/更新する方法。JQuery date pciker
cell-grid
使用されるバージョンは angular v1.2.3
、ui-grid v3.0.6
.