能夠讓使用者點選日期
這部份jQuery UI也有套件可以做到
但calendar控制項最大的缺點是不能直接指定年為單位調整日曆
頂多只能一個月一個月切換
如果要跳到1911年不是按到手抽筋就是你滑鼠壞掉吧…
不過當然還有辦法辦到
在此做個紀錄
protected void Page_Load(object sender, EventArgs e) { if (!Page.IsPostBack) { for (int i = year; i >= year - 100; i--) { DDLYear.Items.Add(new ListItem(i.ToString())); } for (int i = 1; i < 13; i++) { DDLMonth.Items.Add(new ListItem(i.ToString())); } } } protected void DropDownList2_SelectedIndexChanged(object sender, EventArgs e) { Calendar1.TodaysDate = new DateTime(int.Parse(DDLYear.SelectedValue), int.Parse(DDLMonth.SelectedValue), 1); //Calendar1.VisibleDate = new DateTime(int.Parse(DDLYear.SelectedValue), int.Parse(DDLMonth.SelectedValue), 1); // Calendar1.SelectedDate = new DateTime(int.Parse(DDLYear.SelectedValue), int.Parse(DDLMonth.SelectedValue), 1); } protected void DropDownList3_SelectedIndexChanged(object sender, EventArgs e) { Calendar1.TodaysDate = new DateTime(int.Parse(DDLYear.SelectedValue), int.Parse(DDLMonth.SelectedValue), 1); //Calendar1.VisibleDate = new DateTime(int.Parse(DDLYear.SelectedValue), int.Parse(DDLMonth.SelectedValue), 1); //Calendar1.SelectedDate = new DateTime(int.Parse(DDLYear.SelectedValue), int.Parse(DDLMonth.SelectedValue), 1); }Calendar1.TodaysDate跟Calendar1.VisibleDate最大的差別是 Calendar1.TodaysDate切換到該年月日曆後還是會有個目前選擇的日期 但Calendar1.VisibleDate不會有目前選擇的日期這是最大差別 Calendar1.SelectedDate嘗試是的結果是沒反應,這個有空再研究看看 最後這個範例應該是可以指定日的 只是需要用月份判斷日要產生幾天還有是否為閏年 流程大概是選擇完年後(月是固定的) 日的dropdownlist需要取得目前該月的天數 再由此天數去產生list的內容 不過這部份有遇到再寫吧… 參考文獻
MIS2000時光跳躍
Calendar.TodaysDate
Calendar.VisibleDate