返回列表 發布新帖

通過介面設計器配置的日期資訊,如何動態控制可選範圍?

162 1
發表於 2025-3-5 10:09 | 查看全部 閱讀模式
問答

緊急程度

待解決
目前介面設計器的時間控件的最大和最小可以動態設定嗎?
例如限定只能挑選今天和28天后的日期

評論1

姜文盛樓主Lv.9 發表於 2025-3-5 10:09 | 查看全部
解決方案:
可以通過hooks來實現
假設開始時間時Start_time,結束時間時End_time,當調整開始時間時,要限制結束時間不能早於開始時間; 示例如下:

1)移動端:
在Start_time上定義onChange事件的hooks,限制結束時間的最小值為開始時間的當前值
var startTime = curComponent.data.text;
var endTimeComp = proxyPage.getComponent("End_time");
endTimeComp.data.minDatetime = startTime;
endTimeComp.update();
反之,如果是要限制可選擇的最大時間,就是設置xxxx.data.maxDatetime=xxxxx,等號右邊的值必須是YYYY-MM-DD或者YYYY-MM-DD hh:mm:ss格式的字元串

2)PC端
給Start_ time定義valueChangesHook的數據Hooks
var startTimeComp = dataControl.getComponentByPath(“leave_application. Start_time");
var startTime = startTimeComp.getControl().value;
var endTimeComp = dataControl.getComponentByPath("leave_application. End_time");
endTimeComp.disabledDate = (current) => {
var currentDate = new Date(current);
var newDate = new Date(currentDate.getFullYear(), currentDate.getMonth(), currentDate.getDate(), 23, 59, 59);
var startTimeTemp = new Date(startTime);

return newDate.getTime() < startTimeTemp.getTime();
};

回復

您需要登錄後才可以回帖 登錄 | 立即注册

本版積分規則

  • 加入Line諮詢
Copyright © 2026 鼎新數智股份有限公司 版權所有 All Rights Reserved. Powered by Discuz! X5.0
關燈 在本版發帖
即将开放
返回頂部
快速回復 返回頂部 返回列表