sapui5 sap.ui.unified.Calendar如何从日历中删除选定的SpecialDate颜色
我在sap.ui.unified.Calendar中遇到了一个问题,如果我选择了任何特殊日期并取消了所选日期,则应从日历中删除颜色(删除绿色)。在这里,我可以从后端删除它,但它不会反映在UI中。但是如果我重新加载应用程序,它将被删除 在上面的屏幕截图中,如果您看到,在选择日期23后,如果我单击“取消”,将调用Odata服务并删除所选日期。但它并没有反映在UI中。但是如果我重新加载应用程序,我就会看到预期的行为。但是当我点击Cancel时,我希望立即出现这种行为。这里我只是调用一个Odata服务来取消所选的日期 下面是在日历中显示颜色的代码sapui5 sap.ui.unified.Calendar如何从日历中删除选定的SpecialDate颜色,sapui5,Sapui5,我在sap.ui.unified.Calendar中遇到了一个问题,如果我选择了任何特殊日期并取消了所选日期,则应从日历中删除颜色(删除绿色)。在这里,我可以从后端删除它,但它不会反映在UI中。但是如果我重新加载应用程序,它将被删除 在上面的屏幕截图中,如果您看到,在选择日期23后,如果我单击“取消”,将调用Odata服务并删除所选日期。但它并没有反映在UI中。但是如果我重新加载应用程序,我就会看到预期的行为。但是当我点击Cancel时,我希望立即出现这种行为。这里我只是调用一个Odata服务
for (var i = 0; i < data.results.length; i++) {
//oRefDate.setDate(i);
var oRefDate = new Date(data.results[i].Reqdate);
var sType = "";
if (data.results[i].Legendid == "GROUP_LEVEL1") {
sType = "Type01";
} else if (data.results[i].Legendid == "BADVALUE_LIGHT") {
sType = "Type02";
} else if (data.results[i].Legendid == "NEGATIVE") {
sType = "Type03";
} else if (data.results[i].Legendid == "KEY_MEDIUM") {
sType = "Type04";
} else if (data.results[i].Legendid == "GOODVALUE_DARK") {
sType = "Type02";
}
oCal1.addSpecialDate(new sap.ui.unified.DateTypeRange({
startDate: new Date(oRefDate),
type: sType,
tooltip: data.results[i].Tooltip
}));
}
for(var i=0;i
有人能帮我解决这个问题吗?你能分享问题中的代码吗?我已经添加了代码。你能帮我查一下吗?回oData的电话将发送一个后续的“GET”。然后需要在那里执行上述逻辑。尝试刷新模型:this.getView().getModel().refresh()或尝试将着色逻辑放在另一个方法中,该方法在GET调用后调用。我将在此处执行相同的逻辑。如果我尝试执行refresh()或调用相同的服务,则所选颜色将在后端被删除。但在UI中,它并没有被删除。如果我重新加载页面,那么我可以看到颜色的删除。我正在尝试使用removeSpecialDate()和removeSelectedDate(),但没有任何效果。请尝试使用此.getView().getModel().refresh(true)或此.getView().getModel().updateBindings(true)???