提供乙個不錯的免費日曆控制項

2021-04-12 14:31:17 字數 3077 閱讀 5996

1、乙個如果在編輯模式下字段為空的情況下,控制項為出現錯誤後

2、選擇完成後日曆自動收縮

3、在字段為空的情況,text裡顯示的為當前值

再進行發布的。 

c#版本(為原如版本,請熟悉c#函式的人更改一下,我用的是vb.net,呵呵):

gridview中的日期字段輸入,實在是乙個麻煩的事情,因為對一般的使用者來講,不知道輸入日期的那種格式,如果日期的輸入不是文字輸入而是從日曆控制項中選擇,那就要好多了.

這就要建乙個自定義控制項.

1.建立乙個簡單的自定義日期選擇控制項

在可視視窗下,放入乙個textbox,乙個button,乙個日曆控制項

pickdate.ascx的參考源**:

<%@ control language="c#" autoeventwireup="true" codefile="pickdate.ascx.cs" inherits="pickdate" %>

在codefile裡設定必要的屬性和事件處理

using system;

using system.data;

using system.configuration;

using system.collections;

using system.web;

using system.web.security;

using system.web.ui;

using system.web.ui.webcontrols;

using system.web.ui.webcontrols.webparts;

using system.web.ui.htmlcontrols;

public partial class pickdate : system.web.ui.usercontrol

else

}set

}protected void page_load(object sender, eventargs e)

protected void calendar1_selectionchanged(object sender, eventargs e)

protected void button1_click(object sender, eventargs e)  //操縱日曆的可視狀態

else}}

vb.net

pickdate.ascx的參考源**:

<%@ control language="vb" autoeventwireup="false" codefile="pickdate.ascx.vb" inherits="usercontrols_pickdate" %>

'>

pickdate.ascx.vb

imports system

imports system.data

imports system.configuration

imports system.collections

imports system.web

imports system.web.security

imports system.web.ui

imports system.web.ui.webcontrols

imports system.web.ui.webcontrols.webparts

imports system.web.ui.htmlcontrols

partial class usercontrols_pickdate

inherits system.web.ui.usercontrol

public property thisdate() as string

getif tbdate.text <> string.empty then

return datetime.parse(tbdate.text)

else

return ("請選擇日期")

'return (datetime.now.date)

end if

end get

set(byval value as string)

if value = system.dbnull.value.tostring then

tbdate.text = string.empty

else

calendar1.selecteddate = cdate(value) '不需要判斷value,因為一定為日期型

calendar1.visibledate = cdate(value)

tbdate.text = cdate(value).date.toshortdatestring

end if

end set

end property

protected sub calendar1_selectionchanged(byval sender as object, byval e as system.eventargs)

tbdate.text = calendar1.selecteddate.toshortdatestring

calendar1.visible = false

button1.text = "▼"

end sub

protected sub button1_click(byval sender as object, byval e as system.eventargs)

calendar1.visible = not calendar1.visible

if calendar1.visible = true then

button1.text = "▲"

else

button1.text = "▼"

end if

end sub

end class

2把要用這個控制項的列轉為模板,然後在edit模板中放入這個控制項,在源**檢視進行繫結(可視狀態無法繫結,因為繫結的屬性選項中不出現thisdate屬性)

' />

一定要在引用頁宣告:<%@ register tagprefix="uc4" tagname="pickdate" src="../usercontrols/pickdate.ascx" %>

乙個簡單的日曆控制項

效果圖 var defaultdate new date var startyear,startmonth,startday 變數定義需要改一下,用default來定義當天的所有資訊 不能改變 var defaultmonth defaultdate.getmonth var defaultyear...

乙個css jq的日曆控制項

剛畢業,閒著的時候做了乙個日曆控制項,用css和jquery實現基本的日曆功能,包括年份和月份的翻頁,日期的選擇,根據輸入框的初始內容來初始化控制項,日期改變之後,也會更新該輸入框的內容。首先是css charset utf 8 css document x date date body date ...

收藏的乙個js日曆控制項

收藏的乙個js日曆控制項 setday.js function cnverycalendar if y 100 0 return 29 generate codes this.generatecalendartable function loop each days in current month...