You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

815 lines
32 KiB
C#

This file contains invisible Unicode characters!

This file contains invisible Unicode characters that may be processed differently from what appears below. If your use case is intentional and legitimate, you can safely ignore this warning. Use the Escape button to reveal hidden characters.

This file contains ambiguous Unicode characters that may be confused with others in your current locale. If your use case is intentional and legitimate, you can safely ignore this warning. Use the Escape button to highlight these characters.

using System;
namespace HuizhongLibrary.Control
{
/// <summary>
/// JavaScriptConstant 的摘要说明。
/// </summary>
public class JavaScriptConstant
{
#region 复选框全选的脚本
public static string jsCheckAll = @"<script type=""text/javascript"">
//function select_deselectAll(chkval,GridID,CheckBoxID)
function select_deselectAll(chkval,idval)
{
var table1=document.getElementById(idval);
for (var i=1;i<=table1.rows.length+3;i++)
{
var rowid=idval+'_ctl0'+i;
if (i>9)rowid=idval+'_ctl'+i;
var v1=document.getElementById(rowid+'_CheckBoxSelect_123456789');
if (v1==null)continue;
if(chkval==true)
{
v1.checked=true;
}
else
{
v1.checked=false;
}
}
// var frm=document.forms[0];
// var re = new RegExp(GridID+'.{1,}'+CheckBoxID,'i');
// for(i=0;i<frm.length;i++)
// {
// var val= frm.elements[i].id.match(re);
// if (val==null || val.length==0)continue;
// if (frm.elements[i].disabled==true)continue;
// if(chkval==true)
// {
// frm.elements[i].checked=true;
// }
// else
// {
// frm.elements[i].checked=false;
// }
// }
}
</script>";
#endregion
#region 层移动脚本
public static string divMove=@"<script language=""JavaScript"" for=""document"" type=""text/javascript"">
var orgMouseX;
var orgMouseY;
var orgObjX;
var orgObjY;
var bk=0;
function doDrag(HeadID,ContentID)
{
if (bk==0)return;
var myObject=document.getElementById(HeadID);
var myObject1=document.getElementById(ContentID);
var x=event.clientX;
var y=event.clientY;
myObject.style.left=x-(orgMouseX-orgObjX);
myObject.style.top=y-(orgMouseY-orgObjY);
// myObject1.style.top=myObject.style.top+myObject.style.height;
myObject1.style.left=myObject.style.left;
if (document.getElementById(HeadID+'Header_top')!=null)document.getElementById(HeadID+'Header_top').value=myObject.style.top
if (document.getElementById(HeadID+'Header_left')!=null)document.getElementById(HeadID+'Header_left').value=myObject.style.left
}
function doMouseDown(HeadID)
{
orgMouseX=event.clientX;
orgMouseY=event.clientY;
orgObjX=parseInt(document.getElementById(HeadID).style.left);
orgObjY=parseInt(document.getElementById(HeadID).style.top);
bk=1;
}
function doMouseUp()
{
bk=0;
}
</script>";
#endregion
#region 回车移动焦点脚本
public static string EnterMoveFocus= @"<script language=""javascript"" event=""onkeydown"" for=""document"">
if(event.keyCode==13 && event.srcElement.type!='button' && event.srcElement.type!='submit' && event.srcElement.type!='reset' && event.srcElement.type!='' && event.srcElement.type!='textarea')
event.keyCode=9;
</script>";
#endregion
#region 日期控件脚本
public static string DateMonth = @"<script language=""JavaScript"" for=""document"" type=""text/javascript"">
/*************************************************************
*日历控件
*用法:
*<INPUT class=clsText onfocus=setday(this) maxLength=16 size=30 name=CSNY c_type=""date"" c_mes=""出生年月"">
**************************************************************/
//==================================================== 参数设定部分 =======================================================
var bMoveable=true; //设置日历是否可以拖动
var _VersionInfo=""Version:2.0&#13;2.0作者:walkingpoison&#13;1.0作者: F.R.Huang(meizz)&#13;MAIL: meizz@hzcnc.com"" //版本信息
//==================================================== WEB 页面显示部分 =====================================================
var strFrame; //存放日历层的HTML代码
document.writeln('<iframe id=MaskedTextBox_meizzDateLayer Author=wayx frameborder=0 style=""position: absolute; width: 144; height: 208; z-index: 9998; display: none""></iframe>');
strFrame='<style>';
strFrame+='select.editTextbox{color:#2A2D60; border-right: #7f9db9 1px solid; border-top: #7f9db9 1px solid; font-size: 12px; ';
strFrame+='border-left: #7f9db9 1px solid; border-bottom: #7f9db9 1px solid; padding-left:1; padding-right:1;}';
strFrame+='INPUT.button{border-right: #D0D0D0 1px solid; border-top: #D0D0D0 1px none; font-size: 12px; border-left: #D0D0D0 1px none; border-bottom: #D0D0D0 1px solid;';
strFrame+='vertical-align:middle; background-image:url(../images/button.gif);background-repeat:repeat; cursor: hand; ';
strFrame+='color:#2A2D60; height:24px; margin:0; padding-top:0px; padding-left:1px; padding-bottom:0px; padding-right:1px;background-color:#D0D0D0;}';
strFrame+='TD{FONT-SIZE: 9pt;font-family:宋体;color:#2A2D60;}';
strFrame+='</style>';
strFrame+='<scr' + 'ipt>';
strFrame+='var datelayerx,datelayery; /*存放日历控件的鼠标位置*/';
strFrame+='var bDrag; /*标记是否开始拖动*/';
strFrame+='document.onmousemove=function()';
strFrame+='{if(bDrag && window.event.button==1)';
strFrame+=' {var DateLayer=parent.document.all.MaskedTextBox_meizzDateLayer.style;';
strFrame+=' DateLayer.posLeft += window.event.clientX-datelayerx;/*由于每次移动以后鼠标位置都恢复为初始的位置因此写法与div中不同*/';
strFrame += ' DateLayer.posTop += window.event.clientY-datelayery;}';
strFrame += '}\n';
strFrame+='function DragStart() /*开始日历拖动*/';
strFrame+='{var DateLayer=parent.document.all.MaskedTextBox_meizzDateLayer.style;';
strFrame+=' datelayerx=window.event.clientX;';
strFrame+=' datelayery=window.event.clientY;';
strFrame+=' bDrag=true;}';
strFrame+='function DragEnd(){ /*结束日历拖动*/';
strFrame+=' bDrag=false;}';
strFrame+='</scr' + 'ipt>';
strFrame+='<div style=""z-index:9999;position: absolute; left:0; top:0;"" onselectstart=""return false""><span id=tmpSelectYearLayer Author=wayx style=""z-index: 9999;position: absolute;top: 3; left: 19;display: none""></span>';
strFrame+='<span id=tmpSelectMonthLayer Author=wayx style=""z-index: 9999;position: absolute;top: 3; left: 78;display: none""></span>';
strFrame+='<table border=1 cellspacing=0 cellpadding=0 width=142 height=160 bordercolor=#5F9FD1 bgcolor=#5F9FD1 Author=""wayx"">';
strFrame+=' <tr Author=""wayx""><td width=142 height=23 Author=""wayx"" bgcolor=#FFFFFF><table border=0 cellspacing=2 cellpadding=0 width=140 Author=""wayx"" height=23>';
strFrame+=' <tr align=center Author=""wayx""><td width=16 align=center bgcolor=#5F9FD1 style=""font-size:12px;cursor: hand;color: #ffffff"" ';
strFrame+=' onclick=""parent.meizzPrevM()"" title=""向前翻 1 月"" Author=meizz><b Author=meizz>&lt;</b>';
strFrame+=' </td><td width=60 align=center style=""font-size:12px;cursor:default"" Author=meizz ';
strFrame+='onmouseover=""style.backgroundColor=\'#FFD700\'"" onmouseout=""style.backgroundColor=\'white\'"" ';
strFrame+='onclick=""parent.tmpSelectYearInnerHTML(this.innerText.substring(0,4))"" title=""点击这里选择年份""><span Author=meizz id=meizzYearHead></span></td>';
strFrame+='<td width=48 align=center style=""font-size:12px;cursor:default"" Author=meizz onmouseover=""style.backgroundColor=\'#FFD700\'"" ';
strFrame+=' onmouseout=""style.backgroundColor=\'white\'"" onclick=""parent.tmpSelectMonthInnerHTML(this.innerText.length==3?this.innerText.substring(0,1):this.innerText.substring(0,2))""';
strFrame+=' title=""点击这里选择月份""><span id=meizzMonthHead Author=meizz></span></td>';
strFrame+=' <td width=16 bgcolor=#5F9FD1 align=center style=""font-size:12px;cursor: hand;color: #ffffff"" ';
strFrame+=' onclick=""parent.meizzNextM()"" title=""向后翻 1 月"" Author=meizz><b Author=meizz>&gt;</b></td></tr>';
strFrame+=' </table></td></tr>';
strFrame+=' <tr Author=""wayx""><td width=142 height=18 Author=""wayx"">';
strFrame+='<table border=1 cellspacing=2 cellpadding=0 bgcolor=#5F9FD1 ' + (bMoveable? 'onmousedown=""DragStart()"" onmouseup=""DragEnd()""':'');
strFrame+=' BORDERCOLORLIGHT=#E8E5D2 BORDERCOLORDARK=#FFFFFF width=140 height=20 Author=""wayx"" style=""cursor:' + (bMoveable ? 'move':'default') + '"">';
strFrame+='<tr Author=""wayx"" align=center valign=bottom><td style=""font-size:12px;color:#FFFFFF"" Author=meizz>日</td>';
strFrame+='<td style=""font-size:12px;color:#FFFFFF"" Author=meizz>一</td><td style=""font-size:12px;color:#FFFFFF"" Author=meizz>二</td>';
strFrame+='<td style=""font-size:12px;color:#FFFFFF"" Author=meizz>三</td><td style=""font-size:12px;color:#FFFFFF"" Author=meizz>四</td>';
strFrame+='<td style=""font-size:12px;color:#FFFFFF"" Author=meizz>五</td><td style=""font-size:12px;color:#FFFFFF"" Author=meizz>六</td></tr>';
strFrame+='</table></td></tr><!-- Author:F.R.Huang(meizz) http://www.meizz.com/ mail: meizz@hzcnc.com 2002-10-8 -->';
strFrame+=' <tr Author=""wayx""><td width=142 height=120 Author=""wayx"">';
strFrame+=' <table border=1 cellspacing=1 cellpadding=0 BORDERCOLORLIGHT=#E8E5D2 BORDERCOLORDARK=#FFFFFF bgcolor=#E4F8F9 width=140 height=120 Author=""wayx"">';
var n=0; for (j=0;j<5;j++){ strFrame+= ' <tr align=center Author=""wayx"">'; for (i=0;i<7;i++){
strFrame+='<td width=20 height=20 id=meizzDay'+n+' style=""font-size:12px"" Author=meizz onclick=parent.meizzDayClick(this.innerText,0)></td>';n++;}
strFrame+='</tr>';}
strFrame+=' <tr align=center Author=""wayx"">';
for (i=35;i<39;i++)strFrame+='<td width=20 height=20 id=meizzDay'+i+' style=""font-size:12px"" Author=wayx onclick=""parent.meizzDayClick(this.innerText,0)""></td>';
strFrame+=' <td colspan=3 align=right Author=meizz><span onclick=parent.closeLayer() style=""font-size:12px;cursor: hand""';
strFrame+=' Author=meizz title=""' + _VersionInfo + '""><u>关闭</u></span>&nbsp;</td></tr>';
strFrame+=' </table></td></tr><tr Author=""wayx""><td Author=""wayx"">';
strFrame+=' <table border=0 cellspacing=1 cellpadding=0 width=100% Author=""wayx"" bgcolor=#E4F8F9>';
strFrame+=' <tr Author=""wayx""><td Author=meizz align=left><input Author=meizz type=button class=button value=""<<"" title=""向前翻 1 年"" onclick=""parent.meizzPrevY()"" ';
strFrame+=' onfocus=""this.blur()"" style=""font-size: 12px; height: 20px""><input Author=meizz class=button title=""向前翻 1 月"" type=button ';
strFrame+=' value=""< "" onclick=""parent.meizzPrevM()"" onfocus=""this.blur()"" style=""font-size: 12px; height: 20px""></td><td ';
strFrame+=' Author=meizz align=center><input Author=meizz type=button class=button value=""今天"" onclick=""parent.meizzToday()"" ';
strFrame+=' onfocus=""this.blur()"" title=""当前日期"" style=""font-size: 12px; height: 20px; cursor:hand""></td><td ';
strFrame+=' Author=meizz align=right><input Author=meizz type=button class=button value="" >"" onclick=""parent.meizzNextM()"" ';
strFrame+=' onfocus=""this.blur()"" title=""向后翻 1 月"" class=button style=""font-size: 12px; height: 20px""><input ';
strFrame+=' Author=meizz type=button class=button value="">>"" title=""向后翻 1 年"" onclick=""parent.meizzNextY()""';
strFrame+=' onfocus=""this.blur()"" style=""font-size: 12px; height: 20px""></td>';
strFrame+='</tr></table></td></tr></table></div>';
window.frames.MaskedTextBox_meizzDateLayer.document.writeln(strFrame);
window.frames.MaskedTextBox_meizzDateLayer.document.close(); //解决ie进度条不结束的问题
//==================================================== WEB 页面显示部分 ======================================================
var outObject;
var outButton; //点击的按钮
var outDate=""""; //存放对象的日期
var odatelayer=window.frames.MaskedTextBox_meizzDateLayer.document.all; //存放日历对象
function setday(tt,obj) //主调函数
{
if (arguments.length > 2){alert(""对不起!传入本控件的参数太多!"");return;}
if (arguments.length == 0){alert(""对不起!您没有传回本控件任何参数!"");return;}
var dads = document.all.MaskedTextBox_meizzDateLayer.style;
var th = tt;
var ttop = tt.offsetTop; //TT控件的定位点高
var thei = tt.clientHeight; //TT控件本身的高
var tleft = tt.offsetLeft; //TT控件的定位点宽
var ttyp = tt.type; //TT控件的类型
while (tt = tt.offsetParent){ttop+=tt.offsetTop; tleft+=tt.offsetLeft;}
dads.top = (ttyp==""image"")? ttop+thei : ttop+thei+6;
dads.left = tleft;
outObject = (arguments.length == 1) ? th : obj;
outButton = (arguments.length == 1) ? null : th; //设定外部点击的按钮
//根据当前输入框的日期显示日历的年月
var reg = /^(\d+)-(\d{1,2})-(\d{1,2})$/;
var r = outObject.value.match(reg);
if(r!=null){
r[2]=r[2]-1;
var d= new Date(r[1], r[2],r[3]);
if(d.getFullYear()==r[1] && d.getMonth()==r[2] && d.getDate()==r[3]){
outDate=d; //保存外部传入的日期
}
else outDate="""";
meizzSetDay(r[1],r[2]+1);
}
else{
outDate="""";
meizzSetDay(new Date().getFullYear(), new Date().getMonth() + 1);
}
dads.display = '';
event.returnValue=false;
}
var MonHead = new Array(12); //定义阳历中每个月的最大天数
MonHead[0] = 31; MonHead[1] = 28; MonHead[2] = 31; MonHead[3] = 30; MonHead[4] = 31; MonHead[5] = 30;
MonHead[6] = 31; MonHead[7] = 31; MonHead[8] = 30; MonHead[9] = 31; MonHead[10] = 30; MonHead[11] = 31;
var meizzTheYear=new Date().getFullYear(); //定义年的变量的初始值
var meizzTheMonth=new Date().getMonth()+1; //定义月的变量的初始值
var meizzWDay=new Array(39); //定义写日期的数组
document.onclick=function() //任意点击时关闭该控件 //ie6的情况可以由下面的切换焦点处理代替
{
with(window.event)
{ if (srcElement.getAttribute(""Author"")==null && srcElement != outObject && srcElement != outButton)
closeLayer();
}
}
document.onkeyup = function () //按Esc键关闭切换焦点关闭
{
if (window.event.keyCode==27){
if(outObject)outObject.blur();
closeLayer();
}
else if(document.activeElement)
if(document.activeElement.getAttribute(""Author"")==null && document.activeElement != outObject && document.activeElement != outButton)
{
closeLayer();
}
}
function meizzWriteHead(yy,mm) //往 head 中写入当前的年与月
{
odatelayer.meizzYearHead.innerText = yy + "" 年"";
odatelayer.meizzMonthHead.innerText = mm + "" 月"";
}
function tmpSelectYearInnerHTML(strYear) //年份的下拉框
{
if (strYear.match(/\D/)!=null){alert(""年份输入参数不是数字!"");return;}
var m = (strYear) ? strYear : new Date().getFullYear();
if (m < 1000 || m > 9999) {alert(""年份值不在 1000 到 9999 之间!"");return;}
var n = m - 10;
if (n < 1000) n = 1000;
if (n + 26 > 9999) n = 9974;
var s = ""<select Author=meizz name=tmpSelectYear style='font-size: 12px' ""
s += ""onblur='document.all.tmpSelectYearLayer.style.display=\""none\""' ""
s += ""onchange='document.all.tmpSelectYearLayer.style.display=\""none\"";""
s += ""parent.meizzTheYear = this.value; parent.meizzSetDay(parent.meizzTheYear,parent.meizzTheMonth)'>\r\n"";
var selectInnerHTML = s;
for (var i = n; i < n + 26; i++)
{
if (i == m)
{selectInnerHTML += ""<option Author=wayx value='"" + i + ""' selected>"" + i + ""年"" + ""</option>\r\n"";}
else {selectInnerHTML += ""<option Author=wayx value='"" + i + ""'>"" + i + ""年"" + ""</option>\r\n"";}
}
selectInnerHTML += ""</select>"";
odatelayer.tmpSelectYearLayer.style.display="""";
odatelayer.tmpSelectYearLayer.innerHTML = selectInnerHTML;
odatelayer.tmpSelectYear.focus();
}
function tmpSelectMonthInnerHTML(strMonth) //月份的下拉框
{
if (strMonth.match(/\D/)!=null){alert(""月份输入参数不是数字!"");return;}
var m = (strMonth) ? strMonth : new Date().getMonth() + 1;
var s = ""<select Author=meizz name=tmpSelectMonth style='font-size: 12px' ""
s += ""onblur='document.all.tmpSelectMonthLayer.style.display=\""none\""' ""
s += ""onchange='document.all.tmpSelectMonthLayer.style.display=\""none\"";""
s += ""parent.meizzTheMonth = this.value; parent.meizzSetDay(parent.meizzTheYear,parent.meizzTheMonth)'>\r\n"";
var selectInnerHTML = s;
for (var i = 1; i < 13; i++)
{
if (i == m)
{selectInnerHTML += ""<option Author=wayx value='""+i+""' selected>""+i+""月""+""</option>\r\n"";}
else {selectInnerHTML += ""<option Author=wayx value='""+i+""'>""+i+""月""+""</option>\r\n"";}
}
selectInnerHTML += ""</select>"";
odatelayer.tmpSelectMonthLayer.style.display="""";
odatelayer.tmpSelectMonthLayer.innerHTML = selectInnerHTML;
odatelayer.tmpSelectMonth.focus();
}
function closeLayer() //这个层的关闭
{
document.all.MaskedTextBox_meizzDateLayer.style.display=""none"";
}
function IsPinYear(year) //判断是否闰平年
{
if (0==year%4&&((year%100!=0)||(year%400==0))) return true;else return false;
}
function GetMonthCount(year,month) //闰年二月为29天
{
var c=MonHead[month-1];if((month==2)&&IsPinYear(year)) c++;return c;
}
function GetDOW(day,month,year) //求某天的星期几
{
var dt=new Date(year,month-1,day).getDay()/7; return dt;
}
function meizzPrevY() //往前翻 Year
{
if(meizzTheYear > 999 && meizzTheYear <10000){meizzTheYear--;}
else{alert(""年份超出范围1000-9999"");}
meizzSetDay(meizzTheYear,meizzTheMonth);
}
function meizzNextY() //往后翻 Year
{
if(meizzTheYear > 999 && meizzTheYear <10000){meizzTheYear++;}
else{alert(""年份超出范围1000-9999"");}
meizzSetDay(meizzTheYear,meizzTheMonth);
}
function meizzToday() //Today Button
{
var today;
meizzTheYear = new Date().getFullYear();
meizzTheMonth = new Date().getMonth()+1;
today=new Date().getDate();
if(meizzTheMonth.toString().length<2) meizzTheMonth = ""0"" + meizzTheMonth;
if(today.toString().length<2) today = ""0"" + today;
//meizzSetDay(meizzTheYear,meizzTheMonth);
if(outObject){
outObject.value=meizzTheYear + ""-"" + meizzTheMonth + ""-"" + today;
}
closeLayer();
}
function meizzPrevM() //往前翻月份
{
if(meizzTheMonth>1){meizzTheMonth--}else{meizzTheYear--;meizzTheMonth=12;}
meizzSetDay(meizzTheYear,meizzTheMonth);
}
function meizzNextM() //往后翻月份
{
if(meizzTheMonth==12){meizzTheYear++;meizzTheMonth=1}else{meizzTheMonth++}
meizzSetDay(meizzTheYear,meizzTheMonth);
}
function meizzSetDay(yy,mm) //主要的写程序**********
{
meizzWriteHead(yy,mm);
//设置当前年月的公共变量为传入值
meizzTheYear=yy;
meizzTheMonth=mm;
for (var i = 0; i < 39; i++){meizzWDay[i]=""""}; //将显示框的内容全部清空
var day1 = 1,day2=1,firstday = new Date(yy,mm-1,1).getDay(); //某月第一天的星期几
for (i=0;i<firstday;i++)meizzWDay[i]=GetMonthCount(mm==1?yy-1:yy,mm==1?12:mm-1)-firstday+i+1 //上个月的最后几天
for (i = firstday; day1 < GetMonthCount(yy,mm)+1; i++){meizzWDay[i]=day1;day1++;}
for (i=firstday+GetMonthCount(yy,mm);i<39;i++){meizzWDay[i]=day2;day2++}
for (i = 0; i < 39; i++)
{ var da = eval(""odatelayer.meizzDay""+i) //书写新的一个月的日期星期排列
if (meizzWDay[i]!="""")
{
//初始化边框
da.borderColorLight=""#E8E5D2"";
da.borderColorDark=""#FFFFFF"";
if(i<firstday) //上个月的部分
{
da.innerHTML=""<b><font color=gray>"" + meizzWDay[i] + ""</font></b>"";
da.title=(mm==1?12:mm-1) +""月"" + meizzWDay[i] + ""日"";
da.onclick=Function(""meizzDayClick(this.innerText,-1)"");
if(!outDate)
da.style.backgroundColor = ((mm==1?yy-1:yy) == new Date().getFullYear() &&
(mm==1?12:mm-1) == new Date().getMonth()+1 && meizzWDay[i] == new Date().getDate()) ?
""#FFD700"":""#e0e0e0"";
else
{
da.style.backgroundColor =((mm==1?yy-1:yy)==outDate.getFullYear() && (mm==1?12:mm-1)== outDate.getMonth() + 1 &&
meizzWDay[i]==outDate.getDate())? ""#00ffff"" :
(((mm==1?yy-1:yy) == new Date().getFullYear() && (mm==1?12:mm-1) == new Date().getMonth()+1 &&
meizzWDay[i] == new Date().getDate()) ? ""#FFD700"":""#e0e0e0"");
//将选中的日期显示为凹下去
if((mm==1?yy-1:yy)==outDate.getFullYear() && (mm==1?12:mm-1)== outDate.getMonth() + 1 &&
meizzWDay[i]==outDate.getDate())
{
da.borderColorLight=""#FFFFFF"";
da.borderColorDark=""#E8E5D2"";
}
}
}
else if (i>=firstday+GetMonthCount(yy,mm)) //下个月的部分
{
da.innerHTML=""<b><font color=gray>"" + meizzWDay[i] + ""</font></b>"";
da.title=(mm==12?1:mm+1) +""月"" + meizzWDay[i] + ""日"";
da.onclick=Function(""meizzDayClick(this.innerText,1)"");
if(!outDate)
da.style.backgroundColor = ((mm==12?yy+1:yy) == new Date().getFullYear() &&
(mm==12?1:mm+1) == new Date().getMonth()+1 && meizzWDay[i] == new Date().getDate()) ?
""#FFD700"":""#e0e0e0"";
else
{
da.style.backgroundColor =((mm==12?yy+1:yy)==outDate.getFullYear() && (mm==12?1:mm+1)== outDate.getMonth() + 1 &&
meizzWDay[i]==outDate.getDate())? ""#00ffff"" :
(((mm==12?yy+1:yy) == new Date().getFullYear() && (mm==12?1:mm+1) == new Date().getMonth()+1 &&
meizzWDay[i] == new Date().getDate()) ? ""#FFD700"":""#e0e0e0"");
//将选中的日期显示为凹下去
if((mm==12?yy+1:yy)==outDate.getFullYear() && (mm==12?1:mm+1)== outDate.getMonth() + 1 &&
meizzWDay[i]==outDate.getDate())
{
da.borderColorLight=""#FFFFFF"";
da.borderColorDark=""#E8E5D2"";
}
}
}
else //本月的部分
{
da.innerHTML=""<b>"" + meizzWDay[i] + ""</b>"";
da.title=mm +""月"" + meizzWDay[i] + ""日"";
da.onclick=Function(""meizzDayClick(this.innerText,0)""); //给td赋予onclick事件的处理
//如果是当前选择的日期,则显示亮蓝色的背景;如果是当前日期,则显示暗黄色背景
if(!outDate)
da.style.backgroundColor = (yy == new Date().getFullYear() && mm == new Date().getMonth()+1 && meizzWDay[i] == new Date().getDate())?
""#FFD700"":""#e0e0e0"";
else
{
da.style.backgroundColor =(yy==outDate.getFullYear() && mm== outDate.getMonth() + 1 && meizzWDay[i]==outDate.getDate())?
""#00ffff"":((yy == new Date().getFullYear() && mm == new Date().getMonth()+1 && meizzWDay[i] == new Date().getDate())?
""#FFD700"":""#e0e0e0"");
//将选中的日期显示为凹下去
if(yy==outDate.getFullYear() && mm== outDate.getMonth() + 1 && meizzWDay[i]==outDate.getDate())
{
da.borderColorLight=""#FFFFFF"";
da.borderColorDark=""#E8E5D2"";
}
}
}
da.style.cursor=""hand""
}
else{da.innerHTML="""";da.style.backgroundColor="""";da.style.cursor=""default""}
}
}
function meizzDayClick(n,ex) //点击显示框选取日期,主输入函数*************
{
var yy=meizzTheYear;
var mm = parseInt(meizzTheMonth)+ex; //ex表示偏移量用于选择上个月份和下个月份的日期
//判断月份,并进行对应的处理
if(mm<1){
yy--;
mm=12+mm;
}
else if(mm>12){
yy++;
mm=mm-12;
}
if (mm < 10){mm = ""0"" + mm;}
if (outObject)
{
if (!n) {//outObject.value="""";
return;}
if ( n < 10){n = ""0"" + n;}
outObject.value= yy + ""-"" + mm + ""-"" + n ; //注:在这里你可以输出改成你想要的格式
closeLayer();
}
else {closeLayer(); alert(""您所要输出的控件对象并不存在!"");}
}
</script>";
#endregion
#region 打印脚本
public static string DoPrint = @"<script language=""JavaScript"" type=""text/javascript"">
function DoPrint() {
var bdhtml=window.document.body.innerHTML;
sprnstr=""<!--startprint-->"";
eprnstr=""<!--endprint-->"";
prnhtml=bdhtml.substr(bdhtml.indexOf(sprnstr)+17);
prnhtml=prnhtml.substring(0,prnhtml.indexOf(eprnstr));
window.document.body.innerHTML=prnhtml;
window.print();
}
</script>";
#endregion
#region 限制只能输入浮点数的脚本
/*
ascii码说明
8退格键
46delete
37-40 方向键
48-57小键盘区的数字
96-105主键盘区的数字
110、190小键盘区和主键盘区的小数点
189、109小键盘区和主键盘区的负号
13回车
9 Tab 就是那个把焦点移到下一个文本框的东东。
*/
public static string KeyDown_float = @"<script type=""text/javascript"">
function KeyDown_float(obj,min)
{
var k=window.event.keyCode;
var val=obj.value;
if (k==110 || k==190)
{
var a=val.match(/\./ig);
if (a!=null && a.length>0)window.event.returnValue = false;
}
if (k==189 || k==109)
{
var minval = parseFloat(min);
if (minval==null)window.event.returnValue = false;
if (minval>=0)window.event.returnValue = false;
var b=val.match(/\-/ig);
if (b!=null && b.length>0)window.event.returnValue = false;
}
if (window.event.ctrlKey==true && (k==86 || k==118 || k==67 || k==99))return;
if ((k==46) ||(k==189)||(k==109)||(k==8)||(k==190)||(k==110)|| (k>=48 && k<=57)||(k>=96 && k<=105)||(k>=37 && k<=40))
{}
else if(k==13){
window.event.keyCode = 9;}
else{
window.event.returnValue = false;}
}
</script>";
#endregion
#region 限制只能输入整数的脚本
/*
ascii码说明
8退格键
46delete
37-40 方向键
48-57小键盘区的数字
96-105主键盘区的数字
110、190小键盘区和主键盘区的小数点
189、109小键盘区和主键盘区的负号
13回车
9 Tab 就是那个把焦点移到下一个文本框的东东。
*/
public static string KeyDown_int = @"<script type=""text/javascript"">
function KeyDown_int(obj,min)
{
var k=window.event.keyCode;
var val=obj.value;
if (k==189 || k==109)
{
var minval = parseFloat(min);
if (minval==null)window.event.returnValue = false;
if (minval>=0)window.event.returnValue = false;
var b=val.match(/\-/ig);
if (b!=null && b.length>0)window.event.returnValue = false;
}
if (window.event.ctrlKey==true && (k==86 || k==118 || k==67 || k==99))return;
if ((k==46) ||(k==189)||(k==109)||(k==8) || (k>=48 && k<=57)||(k>=96 && k<=105)||(k>=37 && k<=40))
{}
else if(k==13){
window.event.keyCode = 9;}
else{
window.event.returnValue = false;}
}
</script>";
#endregion
#region 客户端回传脚本
public static string doPostBack = @"<script type=""text/javascript"">
function doPostBack(eventTarget, eventArgument)
{
var theform=document.forms[0];
theform.__EVENTTARGET.value = eventTarget.split('$').join(':');
theform.__EVENTARGUMENT.value = eventArgument;
theform.submit();
}
</script>";
#endregion
#region 验证日期的脚本
public static string CheckDateTime= @"<script type=""text/javascript"">
function CheckDateTime(obj)//检验日期型数据是否正确
{
var errorDiv=document.getElementById(obj.id+'Error');
errorDiv.style.cssText=errorStyle;
if (obj.value.length == 0){
return true;
}
var str,temp,jump="";
str=obj.value;
temp=str.split('-');
if((temp[1]==null)||(temp[2]==null))
{
flag = 1;
return false;
}
if(!(isMadeOf(temp[0],intStr)&&isMadeOf(temp[1],intStr)&&isMadeOf(temp[2],intStr)))
{
flag = 1;
return false;
}
var Vyear,Vmonth,Vday;
Vyear=parseInt(getRidOfZero(temp[0]));
Vmonth=parseInt(getRidOfZero(temp[1]));
Vday=parseInt(getRidOfZero(temp[2]));
if(Vyear>2100||Vyear<1900)
jump='年份信息应该在2000到2100年之间';
if(Vmonth>12||Vmonth<1)
jump='月份信息输入不正确';
if(Vday>31||Vday<1)
jump='天数信息输入不正确';
if(jump!="")
{
flag = 1;
return false;
}
if(!forDate1(Vyear,Vmonth,Vday))
{
flag=1;
}
return true;
}
function getRidOfZero(v)//一个数字字符串前的0删除
{
var s="";
for(var i=0;i<v.length;i++)
{
if(v.charAt(i)!='0')
break;
}
for(var t=i;t<v.length;t++)
{
s+=v.charAt(t);
}
return s;
}
function forDate1(useryear,usermonth,userday)
{
var myyear;
var mymonth;
var myday;
//myyear=parseInt(useryear);
//mymonth=parseInt(usermonth);
//myday=parseInt(userday);
myyear=useryear;
mymonth=usermonth;
myday=userday;
if (myyear < 1950 || myyear > 2050 ||mymonth < 1 ||mymonth > 12 || myday < 1 || myday > 31)
return (false);
if(mymonth==4 || mymonth==6 || mymonth==9 || mymonth==11)
{
if(myday>30)
return (false);
}
if(myyear%4==0)
{
if((myyear%100==0 && myyear%400==0) || myyear%100!=0)
{
if(mymonth==2 && myday>29)
return (false);
else
return (true);
}
}
else
{
if(mymonth==2 && myday>28)
return (false);
else
return (true);
}
}
</script>";
#endregion
#region 验证值大小
public static string CheckSize = @"<script type=""text/javascript"">
//判断value的大小是否由符合标准
function CheckSize(obj,min,max)
{
var val=obj.value;
if (val=='' || min=='' || max=='' ||val=='-')return;
var a=val.match(/\./ig);
if (a!=null && a.length>1)document.getElementById(obj.id).value='';
var b=val.match(/\-/ig);
if (b!=null && b.length>1)document.getElementById(obj.id).value='';
if (b!=null && b.length==1 && val.substring(0,1)!='-')document.getElementById(obj.id).value=obj.value.replace('-','');
var maxval = parseFloat(max);
var minval = parseFloat(min);
var selval = parseFloat(val);
if (minval>maxval)return;
if (isNaN(selval)){
alert('只能输入数字,当前为'+selval);
obj.value='';
}
if (!isNaN(maxval)){
if (selval > maxval){
alert('数据超出范围,不能大于'+maxval);
document.getElementById(obj.id).value='';
}
}
}
function CheckMinSize(obj,min)
{
var val=obj.value;
if (val=='' || min=='')return;
var a=val.match(/\./ig);
if (a!=null && a.length>1)document.getElementById(obj.id).value='';
var b=val.match(/\-/ig);
if (b!=null && b.length>1)document.getElementById(obj.id).value='';
if (b!=null && b.length==1 && val.substring(0,1)!='-')document.getElementById(obj.id).value='';
var minval = parseFloat(min);
var selval = parseFloat(val);
if (isNaN(selval)){
alert('只能输入数字,当前为'+selval);
obj.value='';
}
if (!isNaN(minval)){
if (selval < minval){
alert('数据超出范围,不能小于'+minval);
document.getElementById(obj.id).value='';
}
}
}
function CheckDate(obj,minDate,maxDate,defaultDate)
{
var val=obj.value;
if (maxDate=='' || minDate=='' || val=='')return;
var minval = Date.parse(minDate);
var maxval = Date.parse(maxDate);
var selval = Date.parse(val);
if (isNaN(selval))
{
obj.value=defaultDate;
return;
}
if (!isNaN(maxval))
{
if (selval > maxval)
{
obj.value=defaultDate;
}
}
if (!isNaN(minval)){
if (selval < minval){
obj.value=defaultDate;
}
}
}
</script>";
#endregion
#region 格式化数值
public static string FormatNumber = @"<script language=""JavaScript"" type=""text/javascript"">
function FormatNumber(srcStr,nAfterDot) //nAfterDot小数位数
{
   var srcStr,nAfterDot;
   var resultStr,nTen;
if (isNaN(srcStr)==true)return 0;
   srcStr = ''+srcStr+'';
   strLen = srcStr.length;
   dotPos = srcStr.indexOf('.',0);
   if (dotPos == -1){
     resultStr = srcStr+'.';
     for (i=0;i<nAfterDot;i++){
       resultStr = resultStr+'0';
     }
     return resultStr;
   }
   else{
     if ((strLen - dotPos - 1) >= nAfterDot){
       nAfter = dotPos + nAfterDot + 1;
       nTen =1;
       for(j=0;j<nAfterDot;j++){
         nTen = nTen*10;
       }
       resultStr = Math.round(parseFloat(srcStr)*nTen)/nTen;
       return resultStr;
     }
     else{
       resultStr = srcStr;
       for (i=0;i<(nAfterDot - strLen + dotPos + 1);i++){
         resultStr = resultStr+'0';
       }
       return resultStr;
     }
   }
}
</script>";
#endregion
#region 权限设置
public static string PopedomSetting = @"<script language=""JavaScript"" type=""text/javascript"">
function PopedomSetting(ControlName)
{
var frm = document.forms[0].getElementsByTagName('input');
var re = new RegExp(ControlName);
for (i = 0; i < frm.length; i++) {
if (frm[i].type!='Button' && frm[i].type!='image' && frm[i].type!='reset' && frm[i].type!='submit')continue;
if (frm[i].id.length>=10 && frm[i].id.substring(0,10)=='btn_Select')continue; //排除查询按钮
var val = frm[i].id.match(re);
if (val == null || val.length == 0) continue;
frm[i].disabled = true;
}
}
</script>";
#endregion
}
}