我的代码如下:
<table>
<tr>
<td>Date Start</td>
<td><input type ="text" name="date" class="validate[required] text-input datepicker TextInput"></td>
</tr>
<tr>
<td>Year Month day</td>
<td id="showhere">I want to display year,month,day in here by subtraction between date now and date start.</td>
</tr>
</table>
我需要:
我想在现在的日期和用户输入到上面的文本框中的日期开始之间减去日期。我不知道如何修复此问题。任何人请帮助我,谢谢。
答案 0 :(得分:1)
var d1 = new Date();
var d2 = new Date("2011/10/11")
var diff = Math.abs(d1-d2); // in milliseconds
但是你必须确保输入日期格式是正确的
答案 1 :(得分:0)
首先,为什么要使用文本输入字段来选择日期?这对用户来说不太舒服。使用jquery datepicker而不是它来提供良好的用户界面,并在此之后计算日期差异,如下所示:
请参阅此处的demo
$(document).ready(function () {
$(function() {
$( "#datepicker" ).datepicker({ dateFormat: 'mm/dd/yy' });
});
$('button').click(function() {
var date = $('#datepicker').datepicker('getDate');
var today = new Date();
var diff = Math.floor((today - date) / (1000 * 60 * 60 * 24));
alert(diff);
});
});
标记:
<head>
<link rel="stylesheet" href="http://code.jquery.com/ui/1.9.0/themes/base/jquery-ui.css" />
<script src="http://code.jquery.com/jquery-1.8.2.js"></script>
<script src="http://code.jquery.com/ui/1.9.0/jquery-ui.js"></script>
</head>
<form>
<input id="datepicker" type="text" readonly="true"/><br>
</form>
<br><button>number of days</button>