我有一个日期选择器,用户只需选择一个日期,然后假设用户单击明日(sysdate + 1)时,动态操作便会发送警报。
Datepicker术语是简单的布局。
动态动作->
名称:有效日期
事件:变化
选择类型:项
项目:datepicker_name
条件:等于
值:sysdate + 1
当我运行程序并单击日历上的任何一天时,都不会出现警报。我认为问题是格式。动态操作将日期视为“ DD / MM / YYYY”,而Datepickers输出为“ DD-Mon-YY”,因此无法进行比较。苹果和橘子。但是我尝试使用该格式以使其完全相同,但仍然没有任何进展。
再次感谢您的时间和帮助!
正如@ScottWe所提到的:您正在尝试在HTML / javascript中应用PLSQL逻辑。在运行时评估“何时-条件”,因此您不能在那里使用PLSQL。虽然日期算术在javascript中有点令人讨厌,所以如果您不熟悉它,可以通过以下方法执行检查(即输入的日期是否为明天)。
我从中得到一些提示:
Javascript中的日期差异(忽略一天中的时间)
JavaScript如何以dd-mm-yy格式获取明天的日期
将此函数添加到页面的javascript部分,以获取全局变量和函数:
function isTomorrow(pDateItem){
function getTomorrow(){
var tomorrow = new Date();
tomorrow.setDate(tomorrow.getDate() + 1);
return tomorrow;
};
function cutTime(pDate){
return new Date(pDate.getFullYear(), pDate.getMonth(), pDate.getDate());
};
// check if pDateItem leads to a selection
// check if it is a datepicker
// check if a date has been selected
if ( $(pDateItem).length
&& $(pDateItem).data("datepicker")
&& $(pDateItem).datepicker("getDate") !== null
)
{
var tomorrow = getTomorrow();
var check = $(pDateItem).datepicker("getDate");
var one = cutTime(check);
var two = cutTime(tomorrow);
return one.getDate() === two.getDate();
};
return false;
}
然后在动态操作“何时”条件下,使用带有以下代码的javascript表达式:
isTomorrow(this.triggeringElement)
然后,只有当日期设置为明天时,才会触发相应的“真实操作”。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句