计算按天数选择日期的日期

时间:2010-03-22 20:23:24

标签: javascript jquery

我有三个选择下拉列表,包括日,月,年。很标准。为了这个问题,我省略了所有单独的选择选项。

<label for="start_date">Start Date<font class="required">*</font>:</label>
<select name="place_booking[day_val]">
<select name="place_booking[month_val]">
<select name="place_booking[year_val]">

在此下面,我可以选择客户希望留在租赁的天数。

<label for="number_of_days">Number of Days<font class="required">*</font>:</label>
<select name="place_booking[number_of_days]">

根据上面两个选项,下面有一个显示出发日期的空间。

<label for="departure_date">Departure Date<font class="required">*</font>:</label>

? - 我希望在选择上述内容后显示计算日期

任何帮助都会受到赞赏。

2 个答案:

答案 0 :(得分:0)

您可以使用以下代码

var start_date = new Date(parseInt(form['place_booking[year_val]'].value), parseInt(form['place_booking[month_val]'].value), parseInt(form['place_booking[day_val]'].value));
var departure_date = new Date(Date.parse(start_date) + 3600000*24*parseInt(form['place_booking[number_of_days]'].value));

或者您可以使用我在http://www.depressedpress.com/Content/Development/JavaScript/Extensions/DP_DateExtensions/Index.cfm中使用的库来进行JavaScript中的日期操作。它记录良好且易于使用。

答案 1 :(得分:0)

要准确计算日期,您必须将dmy日期转换为自过去某个日期(即所谓的Julian Day)以来的天数,为其添加所需的天数,然后转换结果回到dmy。

Javascript没有内置例程,但formulae众所周知,已经在某些网站上实现(快速谷歌搜索带来了this one等。)