输入离开时间自动计算出天数,输入天数自动推算出离开的时间

酒店登记时间的推算

开发工具与关键技术:MicrossftVisualStudio(MVC项目),Jquery

  • 结构搭建的代码如下
<label class="daoda" for="date">到达</label>
<input id="daoda1" type="datetime-local"  name="Arrive">
<label class="likai" for="sub">离开</label>
<input id="likai1" type="datetime-local" name="leave">
<label class="zhu" for="date"></label>
<input id="tianshu" type="text" name="TianShu">
<label class="tian" for="date"></label>
  • 控制器的方法
    在控制器写好天推算时间的方法,传到视图输出对应的数据
public ActionResult gettime(int day)
{
    DateTime date = DateTime.Now;        //Now 该对象设置为此计算机上的当前日期和时间,表示为本地时间。
    DateTime endDate = date.AddDays(day); //返回一个新的 System.DateTime,它将指定的天数加到此实例的值上。
    string strstartDate= date.ToString("yyyy-MM-ddTHH:mm");// ToString 对象的值转换为它的等效字符串表示形式。
    string strendDate = endDate.ToString("yyyy-MM-ddT12:00");// ToString 对象的值转换为它的等效字符串表示形式。
    return Json(new { strendDate, strstartDate }, JsonRequestBehavior.AllowGet);
}
  • 计算天数的js代码
    输入入住的时间和离开的时间,系统自动计算出天数
//计算天数
$("#likai1").change(function () {           
    var time = $("#daoda1").val();//获取入住的时间
    var time1 = $("#likai1").val();//获取离开的时间
    var date1 = new Date(time)
    var date2 = new Date(time1)
    var s1 = date1.getTime(), s2 = date2.getTime();
    var total = (s2 - s1) / 1000;
    var day = parseInt(total / (24 * 60 * 60));//计算整数天数
    $("#tianshu").val(day);//从天数的input中输出
});
  • 天数推算时间的js代码
    直接输入入住的天数,系统直接推算出入住的时间和离开的时间
//天数推日期
$("#tianshu").keyup(function () {
   var day = $("#tianshu").val();//获取天数input的值
   $.getJSON("/Main/gettime?day=" + day, function (data) {//调用控制器的方法,传过来相当于的参数
       $("#daoda1").val(data.strstartDate);//入住input接收入住的时间
       $("#likai1").val(data.strendDate);//离开input接收离开的时间
   });
});
  • 10
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 8
    评论
下面是一个 C 语言程序,可以实现输入一个日期,输该日期后天的日期: ```c #include <stdio.h> struct Date { int year; int month; int day; }; int is_leap_year(int year) { return ((year % 4 == 0 && year % 100 != 0) || year % 400 == 0); } int get_days_of_month(int year, int month) { int days_of_month[] = {0, 31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31}; if (month == 2 && is_leap_year(year)) { return 29; } return days_of_month[month]; } struct Date get_tomorrow(struct Date date) { int days_of_month = get_days_of_month(date.year, date.month); if (date.day < days_of_month) { date.day++; } else { date.day = 1; if (date.month < 12) { date.month++; } else { date.month = 1; date.year++; } } return date; } int main() { struct Date date; printf("Please enter a date (yyyy-mm-dd): "); scanf("%d-%d-%d", &date.year, &date.month, &date.day); struct Date tomorrow = get_tomorrow(date); printf("The tomorrow is %04d-%02d-%02d\n", tomorrow.year, tomorrow.month, tomorrow.day); return 0; } ``` 在此程序中,我们定义了一个名为 `Date` 的结构体,该结构体包含三个字段:`year`、`month` 和 `day`。我们还定义了两个辅助函数: - `is_leap_year()`:判断某一年是否为闰年。 - `get_days_of_month()`:返回某一年某一月的天数。 在 `get_tomorrow()` 函数中,我们首先根据输入的年份和月份,获取该月的天数。然后判断输入的日期是否为该月的最后一天,如果是,则将月份加 1,如果该月已经是 12 月,则将年份加 1,月份重置为 1。最后,将日期加 1 并返回结果。 在 `main()` 函数中,我们首先提示用户输入一个日期,然后使用 `scanf()` 函数读取用户输入,并调用 `get_tomorrow()` 函数获取该日期的后天日期。最后,输结果。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 8
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值