酒店登记时间的推算
作者:马光佳
撰写时间:2019.1.18
开发工具与关键技术: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接收离开的时间
});
});