我在 Angular 应用程序中使用 Syncfusion。创建事件后,除非单击手动添加的下拉列表,否则我无法再编辑事件编辑器中的任何字段。我将添加用于添加下拉列表的代码。
这里有一些注意事项:
openEditor
。奇怪的是,我以相同的方式添加多选下拉列表,并且不需要单击这些下拉列表即可访问编辑其他字段。
// Driller
let drillerElement: HTMLInputElement = args.element.querySelector(
"#drillerInput"
) as HTMLInputElement;
if (!drillerElement.classList.contains("e-dropdown")) {
this.drillerDropdown = new DropDownList({
placeholder: "Choose driller",
value: eventData.UserResponsibleID,
dataSource: this.peopleResources,
fields: { text: "ResourceName", value: "UserID" },
floatLabelType: "Auto",
});
this.drillerDropdown.query = this.getQueryForResources(
this.getListOfAvailablePeople(
eventData["StartTime"],
eventData["EndTime"],
eventData
)
);
this.drillerDropdown.dataBind();
this.drillerDropdown.appendTo(drillerElement);
drillerElement.setAttribute("name", "UserResponsibleID");
// Handle the change event to update the UserResponsibleID
this.drillerDropdown.change = (args) => {
eventData.UserResponsibleID = this.drillerDropdown.value as number;
};
}
我已经尝试更改对 openEditor 的调用,检查 CSS 样式,删除导致问题的下拉列表,并以不同的方式添加所述下拉列表。
要解决此问题,请删除下面提到的行。如果问题仍然存在,您可以通过将下拉列表组件中的属性一一删除来检查。
this.drillerDropdown.query = this.getQueryForResources(
this.getListOfAvailablePeople(eventData["StartTime"], eventData["EndTime"],eventData));