📄 dropdowncalendar.cs
字号:
writer.RenderEndTag(); //1td
writer.AddAttribute(HtmlTextWriterAttribute.Align, "center");
writer.AddAttribute(HtmlTextWriterAttribute.Width, "70%");
writer.RenderBeginTag(HtmlTextWriterTag.Td);
writer.AddAttribute(HtmlTextWriterAttribute.Id, ID + "_year");
writer.RenderBeginTag(HtmlTextWriterTag.Span);
writer.RenderEndTag();
writer.Write("年");
writer.AddAttribute(HtmlTextWriterAttribute.Id, ID + "_month");
writer.RenderBeginTag(HtmlTextWriterTag.Span);
writer.RenderEndTag();
writer.Write("月");
writer.RenderEndTag(); //td
NextPrevStyle.AddAttributesToRender(writer);
writer.AddAttribute(HtmlTextWriterAttribute.Align, "right");
writer.RenderBeginTag(HtmlTextWriterTag.Td);//1td
writer.AddAttribute(HtmlTextWriterAttribute.Title, "转到下一个月");
writer.AddAttribute(HtmlTextWriterAttribute.Onclick, "changemonth('" + ID + "',1)");
writer.RenderBeginTag(HtmlTextWriterTag.A); //1a
writer.Write(">");
writer.RenderEndTag(); //1a
writer.RenderEndTag(); //1td
writer.RenderEndTag(); //tr
writer.RenderEndTag(); //table
writer.RenderEndTag(); //td
writer.RenderEndTag(); //tr
writer.RenderBeginTag(HtmlTextWriterTag.Tr);
string[] ws = { "星期日", "星期一", "星期二", "星期三", "星期四", "星期五", "星期六", };
foreach (string s in ws)
{
DayHeaderStyle.AddAttributesToRender(writer);
writer.AddAttribute(HtmlTextWriterAttribute.Scope, "col");
if (DayHeaderStyle.HorizontalAlign == HorizontalAlign.NotSet)
writer.AddAttribute(HtmlTextWriterAttribute.Align, "center");
writer.AddAttribute(HtmlTextWriterAttribute.Abbr, s);
writer.RenderBeginTag(HtmlTextWriterTag.Th);
writer.Write(s.Substring(2));
writer.RenderEndTag();
}
writer.RenderEndTag(); //tr
writer.WriteLine("<!--end:header-->");
int index = 0;
for (int i = 0; i < 6; i++)
{
writer.RenderBeginTag(HtmlTextWriterTag.Tr);
for (int j = 0; j < 7; j++)
{
if (j == 0 || j == 6)
WeekendDayStyle.AddAttributesToRender(writer);
else
DayStyle.AddAttributesToRender(writer);
if (DayStyle.HorizontalAlign == HorizontalAlign.NotSet)
writer.AddAttribute(HtmlTextWriterAttribute.Align, "center");
writer.AddAttribute(HtmlTextWriterAttribute.Width, "14%");
writer.AddAttribute(HtmlTextWriterAttribute.Id, ID + "_day" + index.ToString());
writer.AddAttribute(HtmlTextWriterAttribute.Onclick, "setvalue('" + ID + "'," + index +")");
writer.RenderBeginTag(HtmlTextWriterTag.Td);
writer.RenderEndTag(); //td
index++;
}
writer.RenderEndTag(); //tr
}
writer.RenderEndTag(); //table
writer.RenderEndTag(); //div
}
#endregion
#region "script"
string key = "dropdowncalendar_script";
string script = @"
<script language =javascript>
function showCalendar(calendar)
{
var odate = document.getElementById(calendar+'_date');
if ( odate.style.visibility=='hidden' ){
var y = document.getElementById(calendar+'_yeartext').value;
var m = document.getElementById(calendar+'_monthtext').value;
display( calendar,y,m);
odate.style.visibility='visible';
odate.style.display = 'block';
}else{
odate.style.visibility='hidden';
odate.style.display = 'none';
}
}
function changemonth(calendar,par)
{
var omonth = document.getElementById(calendar+'_month');
var oyear = document.getElementById(calendar+'_year');
var m = omonth.innerText;
var y = oyear.innerText;
m = parseInt(m)+par;
if(parseInt(m)>12){
m = 1;
y = parseInt(y)+1;
} else if(parseInt(m)< 1) {
m = 12;
y = parseInt(y)-1;
}
display(calendar, y,m);
}
function daysInMonth(month,year)
{
var ds=new Array(31,28,31,30,31,30,31,31,30,31,30,31);
var n=ds[month];
if(month==1&&year%4==0) ++n;
return n;
}
function display(calendar,year,month)
{
var omonth = document.getElementById(calendar+'_month');
var oyear = document.getElementById(calendar+'_year');
oyear.innerText = year;
omonth.innerText = month;
var start=new Date(year,month-1,1).getDay();
var days=daysInMonth(month-1,year);
var pm = month-1,py = year;
if ( pm == 0 ){
pm = 12;
py = year-1;
}
var pd=daysInMonth(pm-1,py);
var day = calendar + '_day';
for(var i=0;i< start;i++){
var td = document.getElementById(day+i);
var d = pd-start+i+1;
td.innerHTML='<font color = #808080>'+d+'</font>';
td.title=d+'日';
}
for(var i= start+days; i< 42;i++){
var td = document.getElementById(day+i);
var d = i-start-days+1;
td.innerHTML='<font color = #808080>'+d+'</font>';
td.title=d+'日';
}
for(var i=1;i<=days;i++){
var td = document.getElementById( day +(start+i-1));
td.innerText=i;
td.title=year+'年'+ month+'月'+i+'日';
}
}
function validate(calendar)
{
var oyear = document.getElementById(calendar+'_yeartext');
var omonth = document.getElementById(calendar+'_monthtext');
var oday = document.getElementById(calendar+'_daytext');
var y = oyear.value;
var m = omonth.value;
var d = oday.value;
var today = new Date();
if ( isNaN(y)||y > 9999 || y< 1000){
y = today.getFullYear();
oyear.value = y;
}
if ( isNaN(m)|| m > 12 || y< 1){
m = today.getMonth();
omonth.value = m + 1;
}
if ( isNaN(d) || d < 1 || d > daysInMonth(m,y)){
d = 10;
oday.value = d;
}
}
function setvalue(calendar,index)
{
var y = document.getElementById(calendar+'_year').innerText;
var m = document.getElementById(calendar+'_month').innerText;
var d = document.getElementById(calendar+'_day'+index).innerText;
if ( parseInt(d) - 2 > index ) {
m = parseInt(m)-1;
if ( m == 0){
m = 12;
y = parseInt(y) - 1;
}
}else if (parseInt(d)+26<index ){
m=parseInt(m)+1;
if ( m == 13){
m = 1;
y = y + 1;
}
}
document.getElementById(calendar+'_yeartext').value = y;
document.getElementById(calendar+'_monthtext').value = m;
document.getElementById(calendar+'_daytext').value = d;
showCalendar(calendar);
}
</script>";
#endregion
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -