我正在使用ajax日曆擴展程序的'From date'和'To date'文本框,我必須禁用至日期以前的日期或小於選定的'From date'的日期。我可以使用range validation
看到很多帖子。我如何禁用沒有任何消息給用戶的日期?Ajax日曆擴展程序結束日期
2
A
回答
0
首先添加的.dll - RJS.Web.WebControl.PopCalendar.Net.2008.dll
然後添加源代碼:
<asp:TextBox ID="DepartureDate" runat="server"></asp:TextBox>
<rjs:PopCalendar ID="PopCalendar1" runat="server" Control="DepartureDate"
Format="mm dd yyyy"
InvalidDateMessage="The date value entered is invalid." RequiredDate="True"
RequiredDateMessage="You must enter a date value." From-Date="" SelectWeekend="True"
/>
<br />
<br />
<br />
<asp:TextBox ID="ReturnDate" runat="server"></asp:TextBox>
<rjs:PopCalendar ID="myReturnCal" runat="server" Control="ReturnDate"
Format="mm dd yyyy"
InvalidDateMessage="The date value entered is invalid." RequiredDate="True"
RequiredDateMessage="You must enter a date value."
From-Control="DepartureDate" From-Date="" From-Increment="1"
/>
<br />
<asp:Label ID="Results" runat="server"></asp:Label>
<rjs:PopCalendarMessageContainer ID="PopCalMessagesForDeparture" runat="server"
Calendar="myDepartureCal" />
<rjs:PopCalendarMessageContainer ID="PopCalMessagesForReturn" runat="server"
Calendar="myReturnCal" />
0
您可以使用asp:CustomValidator。在OnServerValidate="ServerValidate"
方法,你可以寫這種代碼(代碼隱藏文件):
protected void ServerValidate(object source, ServerValidateEventArgs value)
{
DateTime dtStart = DateTime.ParseExact(txtStartDate.Text.Trim(), "yyyyMMdd", culture.DateTimeFormat);
DateTime dtEnd = DateTime.ParseExact(txtEndDate.Text.Trim(), "yyyyMMdd", culture.DateTimeFormat);
if (dtStart > dtEnd)
{
value.IsValid = false;
txtEndDate.Text = string.Empty
}
}
0
您可以使用更新面板採用了隱藏式觸發按鍵設置第二個文本框的日曆擴展的「結束日期」的屬性:
<asp:ScriptManager ID="ScriptManager1" runat="server">
</asp:ScriptManager>
<asp:UpdatePanel ID="UpdatePanel1" runat="server">
<ContentTemplate>
<asp:TextBox ID="txtStart" runat="server"></asp:TextBox>
<ajaxToolkit:CalendarExtender ID="CalendarExtender1" runat="server" TargetControlID="txtStart" OnClientDateSelectionChanged="dateSelectionChanged">
</ajaxToolkit:CalendarExtender>
<br /><br />
<asp:TextBox ID="txtEnd" runat="server"></asp:TextBox>
<ajaxToolkit:CalendarExtender ID="CalendarExtender2" runat="server" TargetControlID="txtEnd">
</ajaxToolkit:CalendarExtender>
<script type="text/javascript">
function dateSelectionChanged(sender, args) {
__doPostBack('<%=btnReload.ClientID %>', null);
}
</script>
</ContentTemplate>
</asp:UpdatePanel>
<asp:Button ID="btnReload" runat="server" style="display:none;" />
在上面的代碼中,當用戶對第一日曆擴展器的選擇時,「dateSelectionChanged」函數被調用以執行局部回傳。此時,您可以設置第二個日曆擴展的結束日期屬性:
Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
If Page.IsPostBack Then
CalendarExtender2.EndDate = txtStart.Text
End If
End Sub
0
試試這個:
<html>
<head>
<link href="http://ajax.googleapis.com/ajax/libs/jqueryui/1.8/themes/base/jquery-ui.css" rel="stylesheet" type="text/css"/>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.4/jquery.min.js"> </script>
<script src="http://ajax.googleapis.com/ajax/libs/jqueryui/1.8/jquery-ui.min.js"></script>
<script>
$().ready(function() {
$('.dDate, .rDate').datepicker({
showOn: 'both',
buttonImage: "<?=$http?>layout_images/calendar.gif",
buttonImageOnly: true,
beforeShow: customRange,
buttonText: 'Open Calendar',
firstDay: 1,
dateFormat: 'D d M yy',
onSelect: function (date) {
date = $(this).datepicker('getDate');
$('#returningdate').val($.datepicker.formatDate('D d M yy', date));
}
});
});
function customRange(a) {
var b = new Date();
var c = new Date(b.getFullYear(), b.getMonth(), b.getDate());
if (a.id == 'returningdate') {
if ($('.dDate').datepicker('getDate') != null) {
c = $('.dDate').datepicker('getDate');
}
}
return {
minDate: c
}
}
</script>
</head>
<body >
<div style="font-size:11px;">
Depart Date: <input type="text" id="departingdate" class="dDate"><br>
Return Date: <input type="text" id="returningdate" class="rDate">
</div>
</body>
</html>
+0
您只是在代碼中傾倒所有答案。一個好的答案_解決方案。 –
相關問題
- 1. ASP.NET AJAX日曆擴展日期格式
- 2. 將系列EOMONTHs的開始日期擴展到結束日期
- 3. 使用Asp.net Ajax日曆擴展程序有條件地禁用日期
- 4. 使用日曆擴展程序和Javascript驗證日期ASP.NET
- 5. Gridview日曆擴展器獲取日期
- 6. glyphicon日曆開始和結束日期
- 7. 獲取Ajax日曆擴展控件的選定日期
- 8. Ajax Toolkit日曆擴展器當前日期爲ASP.NET
- 9. ajax日曆擴展器中的日期格式(MM/dd/yyyy)
- 10. ajax日曆擴展器月名顯示
- 11. 同步Ajax Toolkit日曆擴展器
- 12. 日曆擴展參考Ajax控件
- 13. 如何在ajax日曆擴展程序中限制年份
- 14. 如何使Ajax日曆擴展程序導致回發
- 15. AJAX日曆擴展程序選擇月份和年份
- 16. 計算ajax日曆擴展程序中的天數
- 17. ajax日曆日期驗證
- 18. 使用日曆擴展程序回發後,文本框不會保留其值使用日曆擴展程序
- 19. 擴展mysql日期
- 20. 在Java中擴展日曆
- 21. 擴展劍道日曆
- 22. 擴展jQuery UI日曆
- 23. 清除結束日期中的早期日期使用ajaxControlToolkit的日曆:calendarExtender
- 24. 今天的日期總是突出顯示在AJAX日曆擴展
- 25. AJAX日曆擴展器 - 將null作爲選定日期的文本
- 26. 日曆擴展日計算例外
- 27. 加入開始和結束日期擴展數據幀,並與
- 28. UILocalNotification結束日期
- 29. 如何使擴展日曆無法在選定日期選擇日期基準?
- 30. 計算存儲在ajax日曆擴展程序控件中的兩個日期的天數差異
你能說清楚嗎,請舉例...我可以幫你ü – Zoya
我有一個來自於日期文本文本盒子,我使用.net 2.0和ajax日曆擴展。我想在日期之前禁用所有日期。 – Sibiraj
我已經在下面的回答我的問題檢查或去http://stackoverflow.com/a/11201843/1445836 – Zoya