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...