Inline Editors Erweiterung
Weitere Informationen zur Inline Editors Erweiterung finden Sie im Artikel Inline-Bearbeitung im Grid.
Das inlineEditors Objekt bietet folgende API:
Methoden
Aktionen:
- startEdit (taskId, columnName): void – Öffnet einen Editor für die angegebene Aufgabe und Zelle, befüllt ihn mit dem zugeordneten Wert und fokussiert den Editor
- taskId – (number | string) – Die Aufgaben-ID
- columnName – (string) – Der Spaltenname
- show (taskId, columnName): void – Öffnet einen leeren Editor in der angegebenen Aufgabe und Zelle
- taskId – (number | string) – Die Aufgaben-ID
- columnName – (string) – Der Spaltenname
- setValue (): void – Befüllt den geöffneten Editor mit Werten aus der Aufgabe
- save (): void – Speichert die Änderungen und schließt den Editor
- hide (): void – Schließt den Editor ohne Änderungen zu speichern
- focus (): void – Setzt den Fokus auf den Editor
- getState (): object – Gibt das Statusobjekt zurück {id: taskId, columnName: columnName, placeholder: HTMLElement}
- getValue (): string – Gibt den aktuellen Wert des Editors zurück
Status:
- isChanged (): boolean – Prüft, ob sich der aktuelle Wert des Editors vom ursprünglichen Wert unterscheidet
- isVisible (): boolean – Prüft, ob der Editor aktuell geöffnet ist
Ereignisse:
- attachEvent (name, handler): string – Fügt dem inlineEditors Objekt einen Ereignis-Handler hinzu
- name – (string) – Der Name des Ereignisses
- handler – (Function) – Die Callback-Funktion, die beim Auslösen des Ereignisses ausgeführt wird
- detachEvent (id): void – Entfernt einen zuvor hinzugefügten Ereignis-Handler
- id – (string) – Die ID des Ereignis-Handlers
Navigation:
- editNextCell (canChangeRow): void – Speichert den aktuellen Editor und wechselt zur nächsten Zelle
- canChangeRow? – (boolean) – Gibt an, ob der Editor nach der letzten Zelle der aktuellen Zeile zur ersten Zelle der nächsten Zeile wechseln kann
- editNextRow (skipReadonly): void – Speichert den aktuellen Editor und öffnet einen Editor in der gleichen Zelle der darunterliegenden Aufgabe
- skipReadonly? – (boolean) – Wenn true, werden schreibgeschützte Aufgaben übersprungen und der Editor wird in der ersten bearbeitbaren Aufgabe darunter geöffnet; wenn false (Standard), wird der Editor geschlossen, wenn die nächste Aufgabe schreibgeschützt ist
- editPrevCell (canChangeRow): void – Speichert den aktuellen Editor und wechselt zur vorherigen Zelle
- canChangeRow? – (boolean) – Gibt an, ob der Editor nach der ersten Zelle der aktuellen Zeile zur letzten Zelle der vorherigen Zeile wechseln kann
- editPrevRow (skipReadonly): void – Speichert den aktuellen Editor und öffnet einen Editor in der gleichen Zelle der darüberliegenden Aufgabe
- skipReadonly? – (boolean) – Wenn true, werden schreibgeschützte Aufgaben übersprungen und der Editor wird in der ersten bearbeitbaren Aufgabe darüber geöffnet; wenn false (Standard), wird der Editor geschlossen, wenn die vorherige Aufgabe schreibgeschützt ist
- getFirstCell (): string – Gibt den Namen der ersten bearbeitbaren Spalte im Grid zurück
- getLastCell (): string – Gibt den Namen der letzten bearbeitbaren Spalte im Grid zurück
- getNextCell (direction): string | null – Gibt den Namen der nächsten bearbeitbaren Spalte zurück
- direction – (number) – Die Richtung:
1
für rechts, -1
für links
Hilfsfunktionen:
- locateCell (node): object | null – Prüft, ob ein angegebenes DOM-Element eine Aufgaben-Zelle ist, und gibt ggf. ein Editor-Statusobjekt zurück: {id: taskId, columnName: columnName}
- node – (HTMLElement) – Das HTML-Element
Maus-/Tastatur-Mapping:
- setMapping (mapping): void – Setzt ein Mapping-Konfigurationsobjekt
- mapping – (object) – Ein Objekt, das das Mapping definiert:
- init – (Function): void – Initialisiert das Mapping
- inlineEditors – (InlineEditorMethods) – Das inlineEditors Objekt
- grid – (any) – Die Grid-Layout-Ansicht
- onShow – (Function): void – Wird aufgerufen, wenn der Inline-Editor geöffnet wird
- inlineEditors – (InlineEditorMethods) – Das inlineEditors Objekt
- node – (HTMLElement) – Das HTML-Element
- grid – (any) – Die Grid-Layout-Ansicht
- onHide – (Function): void – Wird aufgerufen, wenn der Inline-Editor geschlossen wird
- inlineEditors – (InlineEditorMethods) – Das inlineEditors Objekt
- node – (HTMLElement) – Das HTML-Element
- grid – (any) – Die Grid-Layout-Ansicht
- destroy – (Function): void – Bereinigt das Mapping
- getMapping (): object – Gibt das aktuell angewendete Mapping-Objekt zurück
Ereignisse
onBeforeEditStart
Argumente:
- state – (object) – Das Editor-Statusobjekt
- id – (number | string) – Die ID der bearbeiteten Aufgabe
- columnName – (string) – Der Spaltenname
var inlineEditors = gantt.ext.inlineEditors;
inlineEditors.attachEvent("onBeforeEditStart", function(state){
console.log(state);
// -> {id: itemId, columnName: columnName};
return true;
});
onEditStart
Argumente:
- state – (object) – Das Editor-Statusobjekt
- id – (number | string) – Die ID der bearbeiteten Aufgabe
- columnName – (string) – Der Spaltenname
var inlineEditors = gantt.ext.inlineEditors;
inlineEditors.attachEvent("onEditStart", function(state){
console.log(state);
// -> {id: itemId, columnName: columnName};
});
onBeforeSave
Wird ausgelöst, wenn der Editor kurz vor dem Schließen und Speichern der Änderungen steht
Argumente:
- state – (object) – Das Editor-Statusobjekt
- id – (number | string) – Die ID der bearbeiteten Aufgabe
- columnName – (string) – Der Spaltenname
- oldValue – (any) – Der ursprüngliche Wert im Editor
- newValue – (any) – Der aktuelle Wert im Editor, kann verändert werden
var inlineEditors = gantt.ext.inlineEditors;
inlineEditors.attachEvent("onBeforeSave", function(state){
console.log(state);
// -> { id: itemId,
// columnName: columnName,
// oldValue: value,
// newValue: value
// };
return true;
});
onSave
Wird ausgelöst, nachdem eine Aufgabe über den Editor aktualisiert wurde
Argumente:
- state – (object) – Das Editor-Statusobjekt
- id – (number | string) – Die ID der bearbeiteten Aufgabe
- columnName – (string) – Der Spaltenname
- oldValue – (any) – Der ursprüngliche Wert im Editor
- newValue – (any) – Der aktuelle Wert im Editor
var inlineEditors = gantt.ext.inlineEditors;
inlineEditors.attachEvent("onSave", function(state){
console.log(state);
// -> { id: itemId,
// columnName: columnName,
// oldValue: value,
// newValue: value
// };
});
onEditEnd
Wird ausgelöst, nachdem der Inline-Editor geschlossen wurde
Argumente:
- state – (object) – Das Editor-Statusobjekt
- id – (number | string) – Die ID der bearbeiteten Aufgabe
- columnName – (string) – Der Spaltenname
var inlineEditors = gantt.ext.inlineEditors;
inlineEditors.attachEvent("onEditEnd", function(state){
console.log(state);
// -> {id: itemId, columnName: columnName};
});
Zurück nach oben