我有两个通过 jQuery datepickers 选择日期的文本框。我想在 JavaScript 中访问它们并找出它们之间的天数差异。
我通过文本框的 clientID 访问日期并简单地获取差异,但这对我不起作用。是否有一些特定的方法可以从通过 datepicker 填充的文本框中访问日期值以及任何特殊的方法来查找天数的差异?
我的日期字段:
<td style="width: 15%">
<asp:TextBox ID="txtStartDt" runat="server" Enabled="true" Width="80%" ValidationGroup="Save"></asp:TextBox>
<img alt="Select Date" src="../Images/show-calendar.gif" border="0" style="width: 17px; height: 16px;" onclick="javascript:calendarPicker('ContentPlaceHolder1_txtStartDt')" id="IMG1" />
</td>
<td style="width: 9%">
<asp:Label ID="Label3" runat="server" CssClass="label">End Date:</asp:Label>
</td>
<td style="width: 248px">
<asp:TextBox ID="txtEndDt" runat="server" Enabled="true" Width="126px"></asp:TextBox>
<img alt="Select Date" src="../Images/show-calendar.gif" border="0" style="width: 17px; height: 16px;" onclick="javascript:calendarPicker('ContentPlaceHolder1_txtEndDt')" id="IMG2" />
</td>
我的 JavaScript:
function CheckDuration() {
var toDate1 = document.getElementById('<% =txtStartDt.ClientID%>');
var toDate2 = new Date(toDate1.value.replace('-', ' '));
var toDate = toDate2.setDate(toDate2.getDate());
var toDate4 = document.getElementById('<% =txtEndDt.ClientID%>');
var toDate5 = new Date(toDate1.value.replace('-', ' '));
var toDate6 = toDate2.setDate(toDate2.getDate());
if ((toDate6 - toDate) > 30)
confirm("Selected time period is of more than 1 month duration");
}