Я пытаюсь связать форму с сеткой. Моя сетка находится на главной, а моя форма находится внутри всплывающего окна.DHTMLX - Форма связывания и сетка не работают
Мой код формы:
var window_1 = windows.createWindow('window_1', 0, 0, 385, 340);
window_1.setText('Modifier une absence');
window_1.denyMove();
window_1.setModal(1);
window_1.centerOnScreen();
window_1.denyResize();
window_1.denyPark();
window_1.button("minmax").hide();
window_1.button("park").hide();
window_1.button("close").disable();
form_window = window_1.attachForm();
form_window.loadStruct('./data/formAddAbsence.xml');
form_window.bind(grid_3);// to link the form to the grid
form_window.attachEvent("onButtonClick", function(name, command){
if(name=="buttonEnregistrer"){
this.send("editEmployee");
sidebar.cells('sidebar_item_1').setActive(true);
window_1.close();
}
if(name=="buttonAnnuler"){
sidebar.cells('sidebar_item_1').setActive(true);
window_1.close();
}
});
grid_3 определяется прежде с:
var grid_3 = sidebar.cells('sidebar_item_1').attachGrid();
grid_3.setIconsPath('./codebase/imgs/');
grid_3.setHeader(["Nom","Prénom","Statut","Équipe","Début","Fin","Motif"]);
grid_3.setColumnIds("nom,prénom,statut,team,startDate,endDate,type");
grid_3.setColTypes("ro,ro,ro,ro,ro,ro,ro");
grid_3.setColSorting('str,str,str,str,str,str,str');
grid_3.setInitWidths('*,*,*,*,*,*,*');
grid_3.init();
grid_3.sync(absencesDataStore);
Идентификаторы сетки и названия формы одинаковы. (код работает в других частях моего сайта, но формы не отображаются во всплывающем окне).
Проблема заключается в том, что форма не привязана к сетке.
Дополнительная информация: окно создается при обнаружении события. – Gonath
Я просто изменил другую часть кода. Когда я перемещаю форму в окно, привязка не работает. – Gonath
проблема заключается в асинхронном подходе :). Форма загружает его структуру и напрямую пытаюсь связать ее сеткой. Теперь я использую doOnLoad формы, а затем привязываюсь к сетке. Это работает ! – Gonath