如何用js判断时间选择控件选择的日期是否为所选年月的最后一天?

js判断时间选择控件选择的日期是否为所选年月的最后一天,并在单元格中用0和1显示;

FineReport 鲤鱼爱喝气泡水805433 发布于 2025-2-12 15:51 (编辑于 2025-2-12 15:52)
1min目标场景问卷 立即参与
回答问题
悬赏:3 F币 + 添加悬赏
提示:增加悬赏、完善问题、追问等操作,可使您的问题被置顶,并向所有关注者发送通知
共4回答
最佳回答
0
鲤鱼爱喝气泡水805433Lv3见习互助
发布于2025-2-12 16:03

使用公式:IF($pDate=ENDOFMONTH($pDate),"1","0"),解决问题

最佳回答
0
用户k6280494Lv6资深互助
发布于2025-2-12 15:53(编辑于 2025-2-12 15:55)

直接单元格公式就能判断啊,a1是时间控件,DATEINMONTH(a1,-1)获取所选月份的最后一天

if(DATEINMONTH(a1,-1)=a1,1,0)

  • 鲤鱼爱喝气泡水805433 鲤鱼爱喝气泡水805433(提问者) 能否详细说明下
    2025-02-12 15:54 
  • 用户k6280494 用户k6280494 回复 鲤鱼爱喝气泡水805433(提问者) a1是时间控件,DATEINMONTH(a1,-1)获取所选月份的最后一天

    if(DATEINMONTH(a1,-1)=a1,1,0)
    2025-02-12 15:55 
  • 用户k6280494 用户k6280494 回复 鲤鱼爱喝气泡水805433(提问者) 如果是参数栏参数的话,把a1改成参数即可
    2025-02-12 15:55 
最佳回答
0
华莉星宸Lv7资深互助
发布于2025-2-12 15:54

if($时间控件=DATEINMONTH($时间控件,-1),1,0)

------------------------------------

DATEINMONTH(date,number):函数返回在某一个月当中第几天的日期。

示例:

DATEINMONTH("2008-08-08",20)等于2008-08-20。

DATEINMONTH("2008-08-08",-1)等于2008-08-31。

最佳回答
0
snrtuemcLv8专家互助
发布于2025-2-12 15:56

js的话参考

function isEndOfMonth(date) {

// 创建下一个月的第一天

const nextMonthFirstDay = new Date(date.getFullYear(), date.getMonth() + 1, 1);

// 计算当前日期和下一个月第一天之间的天数差

const daysInMonth = (nextMonthFirstDay - date) / (1000 * 60 * 60 * 24);

// 如果天数差为1,则说明是月末

return daysInMonth === 1;

}

// 使用示例

var a=_g().getWidgetByName("时间控件名").getValue(); 

if(isEndOfMonth(a)){alert("是月末");}

else{alert("不是月末");}

  • 3关注人数
  • 37浏览人数
  • 最后回答于:2025-2-12 16:03
    请选择关闭问题的原因
    确定 取消
    返回顶部