js如何通过末次月经日期计算预产日期
计算方式有两种
1)直接添加280天
2)添加10月8天(参数传递,可用改成9月7天等)
js中引入文件
<script src="js/jquery.min.js"></script>
html添加标签
末次月经日期: <input type="date" id="MenstrualDate" onchange="MenstruDateChange()" /> <br/>
预产日期1: <input type="date" id="ProductDate1"/> <br/>
预产日期2: <input type="date" id="ProductDate2"/> <br/>
js添加方法
//预产日期改变事件
var MenstruDateChange = function ()
{
//获取末次月经日期
var menstruDate = $('#MenstrualDate').val();
//计算预产日期(方法一)
var productDate1 = addDate1(menstruDate,280);
//计算预产日期(方法二)
var productDate2 = addDate2(menstruDate, 10, 8);
//设置预产日期
$('#ProductDate1').val(productDate1);
$('#ProductDate2').val(productDate2);
} ///计算预产日期(方法一)
//参数1:要转化日期
//参数2:要添加的天数
//注:(减去多少天,直接传递负数值)
function addDate1(date, days)
{
//转化为日期对象
var d = new Date(date);
//设置日期(原有日期+增加的天数)
d.setDate(d.getDate() + days);
//获取计算后日期的年份
var year = d.getFullYear();
//获取计算后日期的月份
var month = d.getMonth() + 1;
//获取计算后日期的天数(多少号)
var day = d.getDate();
//拼接成日期格式
var dateStr = year + '-' + getFormatDate(month) + '-' + getFormatDate(day);
return dateStr;
} //计算预产日期(方法二)
//参数1:要转化的日期
//参数2:增加的月份
//参数3:增加的天数
function addDate2(date, months, days) {
//转化为日期对象
var d = new Date(date);
//设置日期(原有月份+增加的月份)
d.setMonth(d.getMonth() + months);
//设置日期(原有日期+增加的天数)
d.setDate(d.getDate() + days);
//获取计算后日期的年份
var year = d.getFullYear();
//获取计算后日期的月份
var month = d.getMonth() + 1;
//获取计算后日期的天数(多少号)
var day = d.getDate();
//拼接成日期格式
var dateStr = year + '-' + getFormatDate(month) + '-' + getFormatDate(day);
return dateStr;
} //格式化日期的月份或天数的显示(小于10,在前面增加0)
function getFormatDate(value) {
if (value == undefined || value == "") {
return '';
}
var str = value;
if (parseInt(value) < 10) {
str = '0' + value;
}
return str;
}
显示效果图:
aaarticlea/png;base64,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" alt="" />
js如何通过末次月经日期计算预产日期的更多相关文章
- sql存储过程中,如何根据指定日期、月数、天数推算预产日期
我这边有一个业务,根据某个指定日期,推算某个患者的预产日期 原理:比如孕产的预产日期的算法(预产日期 = 末次月经日期+ 10月+8天) 那么我们怎么通过存储过程来实现呢? 首先分析条件 需要一个指定 ...
- php 日期 - 计算2个日期的差值
/** * 日期-计算2个日期的差值 * @return int */ public function get_difference($date, $new_date) { $date = strto ...
- js 时间格式与时间戳的相互转换和计算几天后的日期是哪一天
//把日期转换成时间戳 function get_unix_time(time1){ var newstr = time1.replace(/-/g,'/'); var date = ...
- js时间戳转换日期格式和日期计算
一.时间戳转换日期 function formatDate(datetime) { // 获取年月日时分秒值 slice(-2)过滤掉大于10日期前面的0 var year = datetime.ge ...
- java日期比较,日期计算
版权声明:本文为楼主原创文章,未经楼主允许不得转载,如要转载请注明来源. 都是常用的日期之间的比较方法,供以后参考. 热身:获取当前时间 SimpleDateFormat df = new Simpl ...
- js计算2个日期相差的天数,两个日期相差的天数,日期相隔天数
js计算2个日期相差的天数,两个日期相差的天数,日期相隔天数 >>>>>>>>>>>>>>>>>& ...
- js中计算两个日期之差
js中计算两个日期之差 var aBgnDate, aEndDate; var oBgnDate, oEndDate; var nYl ...
- js前台计算两个日期的间隔时间
js前台计算两个日期的间隔时间(时间差)原创 2017年08月28日 16:09:43 标签:javascript 1144在后台传来两个时间字段,从中解析出两个字符串类型的日期格式 需要在前台解析出 ...
- js计算两个日期的天数差值
js计算两个日期的天数差值 通过两个日期计算这两个日期之间的天数差值 /** * 计算天数差的函数,通用 * @param sDate1 * @param sDate2 * @returns {Num ...
随机推荐
- python 目录切换
#- * -coding: utf - - * - import os, sys path = "c:\\" # 查看当前工作目录 retval = os.getcwd() pri ...
- linux 打开一个文件现swap文件
转自:http://blog.csdn.net/eckelwei/article/details/17078187 有时候在用vim打开文件时提示类似以下的信息: 发现交换文件 ".expo ...
- LRU缓存机制
运用你所掌握的数据结构,设计和实现一个 LRU (最近最少使用) 缓存机制.它应该支持以下操作: 获取数据 get 和 写入数据 put . 获取数据 get(key) - 如果密钥 (key) 存 ...
- python中的面向对象学习以及类的多态
接下来类的第三个重要的特性:多态(一种接口,多种实现) 多态性(polymorphisn)是允许你将父对象设置成为和一个或更多的他的子对象相等的技术,赋值之后,父对象就可以根据当前赋值给它的子对象的特 ...
- window如何安装redis服务、卸载redis服务和启动redis服务
window如何安装redis服务.卸载redis服务和启动redis服务 一.总结 一句话总结:github上下载,解压,命令行运行(redis-server.exe redis.windows.c ...
- 安装edusoho
1.更新第三方源并升级系统 (CentOS默认的标准源里没有nginx软件包) 1.1.安装CentOS第三方yum源 #安装下载工具wget yum install wget #下载atomic y ...
- 数据结构(C语言版)-第3章 栈和队列
3.1 栈和队列的定义和特点3.2 案例引入3.3 栈的表示和操作的实现3.4 栈与递归3.5 队列的的表示和操作的实现3.6 案例分析与实现 基本操作有入栈.出栈.读栈顶元素值.建栈.判断栈满.栈空 ...
- Confluence 6 设置你的个人空间主页
不论你是否正在使用个人空间为沙盒来测试一些内容,组合灯显示是如何工作的,一个能够导航到其他空间和内容的页面,或者一些完全不同的东西.下面一些红能够帮助你在你的个人空间中更加有效的使用和发布信息. 使用 ...
- 通过.frm和.ibd恢复mysql数据
.frm文件:保存了每个表的元数据,包括表结构的定义等: .ibd文件:InnoDB引擎开启了独立表空间(my.ini中配置innodb_file_per_table = 1)产生的存放该表的数据和索 ...
- BGP华为、思科选路规则
选路规则 华为BGP选路规则 思科BGP选路规则 第0条 下一跳是否可达,如果不可达则不参与选路 BGP 向IBGP对等体发布import引入的IGP路由时, 将下一跳属性改为自身的接口地址,而非IG ...