我想在文本框中使用javascript在文本更改事件中显示的日期中添加天数。请帮帮我...
<tr id="AbsentDays" runat="server">
<td align="right" style="width: 33%">
<asp:Label ID="Label9" runat="server" Text="No of days"></asp:Label>
</td>
<td id="Td5" runat="server"> :
</td>
<td id="Td6" align="left" colspan="3" runat="server">
<asp:TextBox runat="server" ID="txtDayAbsent" Width="80px"
onchange="javascript: ontextchanged();"></asp:TextBox>
</td>
</tr>
<tr>
<td align="right">
<asp:Label ID="lblDurationFrom" runat="server" Text="Duration From"></asp:Label>
</td>
<td style="width: 1%;"> :
</td>
<td style="width: 36%">
<asp:TextBox ID="txtDurationFrom" runat="server" Width="80px"></asp:TextBox>
<cc1:maskededitextender id="MaskedEditExtender2" runat="server" targetcontrolid="txtDurationFrom"
mask="99/99/9999" masktype="Date" errortooltipenabled="True" culturename="en-GB"
cultureampmplaceholder="AM;PM" culturecurrencysymbolplaceholder="£" culturedateformat="DMY"
culturedateplaceholder="/" culturedecimalplaceholder="." culturethousandsplaceholder=","
culturetimeplaceholder=":" enabled="True" />
<cc1:calendarextender id="CalendarExtender1" runat="server" targetcontrolid="txtDurationFrom"
format="dd/MM/yyyy" enabled="True" />
</td>
<td align="right">
<asp:Label ID="lblDurationTo" runat="server" Text="Duration To"></asp:Label>
</td>
<td style="width: 1%;"> :
</td>
<td>
<asp:TextBox ID="txtDurationTo" runat="server" Width="80px"></asp:TextBox>
<cc1:maskededitextender id="MaskedEditExtender1" runat="server" targetcontrolid="txtDurationTo"
mask="99/99/9999" masktype="Date" errortooltipenabled="True" culturename="en-GB"
cultureampmplaceholder="AM;PM" culturecurrencysymbolplaceholder="£" culturedateformat="DMY"
culturedateplaceholder="/" culturedecimalplaceholder="." culturethousandsplaceholder=","
culturetimeplaceholder=":" enabled="True" />
<cc1:calendarextender id="CalendarExtender2" runat="server" targetcontrolid="txtDurationTo"
format="dd/MM/yyyy" enabled="True" />
</td>
</tr>
的Javascript
function ontextchanged()
{
var dayAbsent = document.getElementById('<%=txtDayAbsent.ClientID%>').value;
var myDate = new Date((document.getElementById('<%=txtDurationTo.ClientID%>')).value);
myDate.setDate(myDate.getDate() + parseInt(dayAbsent));
}
关于 txtDayAbsent 的更改事件我想在txtDurationTo中添加没有天数 nowhow将此日期设置为txtDurationTo文本框,格式为dd / mm / yyyy
答案 0 :(得分:0)
您需要提取日期的日,月和年部分,然后使用所需格式制作日期。像这样
<script type="text/javascript">
function ontextchanged() {
var dayAbsent = document.getElementById('<%=txtDayAbsent.ClientID%>').value;
var myDate = new Date((document.getElementById('<%=txtDurationTo.ClientID%>')).value);
myDate.setDate(myDate.getDate() + parseInt(dayAbsent));
var dd = myDate.getDate();
var mm = myDate.getMonth() + 1; //January is 0!
var yyyy = myDate.getFullYear();
if (dd < 10) { dd = '0' + dd } if (mm < 10) { mm = '0' + mm }
var today = dd + '/' + mm + '/' + yyyy;
document.getElementById('<%=txtDurationTo.ClientID%>').value = today;
alert(today);
} </script>