现在的位置: 首页 > 综合 > 正文

【JavaScript】常用JS

2013年10月26日 ⁄ 综合 ⁄ 共 46982字 ⁄ 字号 评论关闭
帐号不能含有中文js
日期:2006-1-3 21:50:36

<script language="JavaScript">
function start(){
MM_preloadImages('images/bmail_index_22_02_over.gif')
document.free.username.focus();
return true;
}
function checkform(){
if(document.free.username.value=="")
{
alert("请输入您的帐号");
document.free.username.focus();
return false;
}
if(/[^\x00-\xff]/.test(document.free.username.value))
{
alert("帐号不能含有中文!");
document.free.username.focus();
return false;
}
if(document.free.password.value=="")
{
alert("请输入您的密码");
document.free.password.focus();
return false;
}
return true;
}
</script>

关闭窗口
<input type=button name=ss value=关闭窗口onclick="javascript:indow.opener.location.reload();window.close();">

刷新父窗口;并关闭子窗口

<script>window.opener.location.reload();window.close();</script>
JS页面打印
<style media=print>
.Noprint{display:none;}
.PageNext{page-break-after: always;}
</style>
<center class="Noprint" >
<p>
<OBJECT id=WebBrowser classid=CLSID:8856F961-340A-11D0-A96B-00C04FD705A2 height=0 width=0>
</OBJECT>
<input type=button value=打印 onclick=document.all.WebBrowser.ExecWB(6,1)>
<input type=button value=直接打印 onclick=document.all.WebBrowser.ExecWB(6,6)>
<input type=button value=页面设置 onclick=document.all.WebBrowser.ExecWB(8,1)>
</p>
<p> <input type=button value=打印预览 onclick=document.all.WebBrowser.ExecWB(7,1)>
<br/>
</p>
<hr align="center" width="90%" size="1" noshade>
</center>

一些常用的js脚本

日期:2006-1-1 16:56:00 人气:0 [大 中 小]

1. oncontextmenu="window.event.returnValue=false" 将彻底屏蔽鼠标右键
<table border oncontextmenu=return(false)><td>no</table> 可用于Table

2. <body onselectstart="return false"> 取消选取、防止复制

3. onpaste="return false" 不准粘贴

4. oncopy="return false;" oncut="return false;" 防止复制

5. <link rel="Shortcut Icon" href="favicon.ico"> IE地址栏前换成自己的图标

6. <link rel="Bookmark" href="favicon.ico"> 可以在收藏夹中显示出你的图标

7. <input style="ime-mode:disabled"> 关闭输入法

8. 永远都会带着框架
<script language="JavaScript"><!--
if (window == top)top.location.href = "frames.htm"; //frames.htm为框架网页
// --></script>

9. 防止被人frame
<SCRIPT LANGUAGE=JAVASCRIPT><!--
if (top.location != self.location)top.location=self.location;
// --></SCRIPT>

10. <noscript><iframe src=*.html></iframe></noscript> 网页将不能被另存为

11. <input type=button value=查看网页源代码
onclick="window.location = 'view-source:'+ 'http://www.csdn.net/'">

12. 怎样通过asp的手段来检查来访者是否用了代理
<% if Request.ServerVariables("HTTP_X_FORWARDED_FOR")<>"" then
response.write "<font color=#FF0000>您通过了代理服务器,"& _
"真实的IP为"&Request.ServerVariables("HTTP_X_FORWARDED_FOR")
end if
%>

13. 取得控件的绝对位置

//Javascript
<script language="Javascript">
function getIE(e){
var t=e.offsetTop;
var l=e.offsetLeft;
while(e=e.offsetParent)
alert("top="+t+"\nleft="+l);
}
</script>

//VBScript
<script language="VBScript"><!--
function getIE()
dim t,l,a,b
set a=document.all.img1
t=document.all.img1.offsetTop
l=document.all.img1.offsetLeft
while a.tagName<>"BODY"
set a = a.offsetParent
t=t+a.offsetTop
l=l+a.offsetLeft
wend
msgbox "top="&t&chr(13)&"left="&l,64,"得到控件的位置"
end function
--></script>

14. 光标是停在文本框文字的最后
<script language="javascript">
function cc()
{
var e = event.srcElement;
var r =e.createTextRange();
r.moveStart('character',e.value.length);
r.collapse(true);
r.select();
}
</script>
<input type=text name=text1 value="123" onfocus="cc()">

15. 判断上一页的来源
asp:
request.servervariables("HTTP_REFERER")

java script:
document.referrer

16. 最小化、最大化、关闭窗口
<object id=hh1 classid="clsid:ADB880A6-D8FF-11CF-9377-00AA003B7A11">
<param name="Command" value="Minimize"></object>
<object id=hh2 classid="clsid:ADB880A6-D8FF-11CF-9377-00AA003B7A11">
<param name="Command" value="Maximize"></object>
<OBJECT id=hh3 classid="clsid:adb880a6-d8ff-11cf-9377-00aa003b7a11">
<PARAM NAME="Command" VALUE="Close"></OBJECT>

<input type=button value=最小化 onclick=hh1.Click()>
<input type=button value=最大化 onclick=hh2.Click()>
<input type=button value=关闭 onclick=hh3.Click()>
本例适用于IE

17.
<%
'定义数据库连接的一些常量
Const adOpenForwardOnly = 0 '游标只向前浏览记录,不支持分页、Recordset、BookMark
Const adOpenKeyset = 1 '键集游标,其他用户对记录说做的修改将反映到记录集中,但其他用户增加或删除记录不会反映到记录集中。支持分页、Recordset、BookMark
Const adOpenDynamic = 2 '动态游标功能最强,但耗资源也最多。用户对记录说做的修改,增加或删除记录都将反映到记录集中。支持全功能浏览(ACCESS不支持)。
Const adOpenStatic = 3 '静态游标,只是数据的一个快照,用户对记录说做的修改,增加或删除记录都不会反映到记录集中。支持向前或向后移动

Const adLockReadOnly = 1 '锁定类型,默认的,只读,不能作任何修改
Const adLockPessimistic = 2 '当编辑时立即锁定记录,最安全的方式
Const adLockOptimistic = 3 '只有在调用Update方法时才锁定记录集,而在此前的其他操作仍可对当前记录进行更改、插入和删除等
Const adLockBatchOptimistic = 4 '当编辑时记录不会被锁定,而更改、插入和删除是在批处理方式下完成的

Const adCmdText = &H0001
Const adCmdTable = &H0002
%>

18. 网页不会被缓存
HTM网页
<META HTTP-EQUIV="pragma" CONTENT="no-cache">
<META HTTP-EQUIV="Cache-Control" CONTENT="no-cache, must-revalidate">
<META HTTP-EQUIV="expires" CONTENT="Wed, 26 Feb 1997 08:21:57 GMT">
或者<META HTTP-EQUIV="expires" CONTENT="0">
ASP网页
Response.Expires = -1
Response.ExpiresAbsolute = Now() - 1
Response.cachecontrol = "no-cache"
PHP网页
header("Expires: Mon, 26 Jul 1997 05:00:00 GMT");
header("Cache-Control: no-cache, must-revalidate");
header("Pragma: no-cache");

怎样让表单没有凹凸感?
<input type=text style="border:1 solid #000000">

<input type=text style="border-left:none; border-right:none; border-top:none; border-bottom: 1 solid #000000"></textarea>

<div><span>&<layer>的区别?
<div>(division)用来定义大段的页面元素,会产生转行
<span>用来定义同一行内的元素,跟<div>的唯一区别是不产生转行
<layer>是ns的标记,ie不支持,相当于<div>

让弹出窗口总是在最上面:
<body onblur="this.focus();">

不要滚动条?
让竖条没有:
<body style='overflow:scroll;overflow-y:hidden'>
</body>
让横条没有:
<body style='overflow:scroll;overflow-x:hidden'>
</body>
两个都去掉?更简单了
<body scroll="no">
</body>

怎样去掉图片链接点击后,图片周围的虚线?
<a href="#" onFocus="this.blur()"><img src="logo.jpg" border=0></a>

电子邮件处理提交表单
<form name="form1" method="post" action="mailto:****@***.com" enctype="text/plain">
<input type=submit>
</form>

在打开的子窗口刷新父窗口的代码里如何写?
window.opener.location.reload()

如何设定打开页面的大小
<body onload="top.resizeTo(300,200);">

在页面中如何加入不是满铺的背景图片,拉动页面时背景图不动
<html><head>
<STYLE>
body
{background-image:url(logo.gif); background-repeat:no-repeat; background-position:center }
</STYLE>
</head>
<body bgproperties="fixed" >
</body>
</html>

19. 检查一段字符串是否全由数字组成
<script language="Javascript"><!--
function checkNum(str){return str.match(/\D/)==null}
alert(checkNum("1232142141"))
alert(checkNum("123214214a1"))
// --></script>

20. 获得一个窗口的大小
document.body.clientWidth,document.body.clientHeight

21. 怎么判断是否是字符
if (/[^\x00-\xff]/g.test(s)) alert("含有汉字");
else alert("全是字符");

22.TEXTAREA自适应文字行数的多少
<textarea rows=1 name=s1 cols=27 onpropertychange="this.style.posHeight=this.scrollHeight">
</textarea>

23. 日期减去天数等于第二个日期
<script language=Javascript>
function cc(dd,dadd)
{
//可以加上错误处理
var a = new Date(dd)
a = a.valueOf()
a = a - dadd * 24 * 60 * 60 * 1000
a = new Date(a)
alert(a.getFullYear() + "年" + (a.getMonth() + 1) + "月" + a.getDate() + "日")
}
cc("12/23/2002",2)
</script>

24. 选择了哪一个Radio
<HTML><script language="vbscript">
function checkme()
for each ob in radio1
if ob.checked then window.alert ob.value
next
end function
</script><BODY>
<INPUT name="radio1" type="radio" value="style" checked>Style
<INPUT name="radio1" type="radio" value="barcode">Barcode
<INPUT type="button" value="check" onclick="checkme()">
</BODY></HTML>

25.获得本页url的request.servervariables("")集合
Response.Write "<TABLE border=1><!-- Table Header --><TR><TD><B>Variables</B></TD><TD><B>Value</B></TD></TR>"
for each ob in Request.ServerVariables
Response.Write "<TR><TD>"&ob&"</TD><TD>"&Request.ServerVariables(ob)&"</TD></TR>"
next
Response.Write "</TABLE>"

26.
本机ip<%=request.servervariables("remote_addr")%>
服务器名<%=Request.ServerVariables("SERVER_NAME")%>
服务器IP<%=Request.ServerVariables("LOCAL_ADDR")%>
服务器端口<%=Request.ServerVariables("SERVER_PORT")%>
服务器时间<%=now%>
IIS版本<%=Request.ServerVariables"SERVER_SOFTWARE")%>
脚本超时时间<%=Server.ScriptTimeout%>
本文件路径<%=server.mappath(Request.ServerVariables("SCRIPT_NAME"))%>
服务器CPU数量<%=Request.ServerVariables("NUMBER_OF_PROCESSORS")%>
服务器解译引擎<%=ScriptEngine & "/"& ScriptEngineMajorVersion &"."&ScriptEngineMinorVersion&"."& ScriptEngineBuildVersion %>
服务器操作系统<%=Request.ServerVariables("OS")%>

27.ENTER键可以让光标移到下一个输入框
<input onkeydown="if(event.keyCode==13)event.keyCode=9">

28. 检测某个网站的链接速度:
把如下代码加入<body>区域中:
<script language=Javascript>
tim=1
setInterval("tim++",100)
b=1

var autourl=new Array()
autourl[1]="www.njcatv.net"
autourl[2]="javacool.3322.net"
autourl[3]="www.sina.com.cn"
autourl[4]="www.nuaa.edu.cn"
autourl[5]="www.cctv.com"

function butt(){
document.write("<form name=autof>")
for(var i=1;i<autourl.length;i++)
document.write("<input type=text name=txt"+i+" size=10 value=测试中……> =》<input type=text name=url"+i+" size=40> =》<input type=button value=GO onclick=window.open(this.form.url"+i+".value)><br>")
document.write("<input type=submit value=刷新></form>")
}
butt()
function auto(url)
else

b++
}
function run(){for(var i=1;i<autourl.length;i++)document.write("<img src=http://"+autourl[i]+"/"+Math.random()+" width=1 height=1 onerror=auto('http://"+autourl[i]+"')>")}
run()</script>

29. 各种样式的光标
auto :标准光标
default :标准箭头
hand :手形光标
wait :等待光标
text :I形光标
vertical-text :水平I形光标
no-drop :不可拖动光标
not-allowed :无效光标
help :?帮助光标
all-scroll :三角方向标
move :移动标
crosshair :十字标
e-resize
n-resize
nw-resize
w-resize
s-resize
se-resize
sw-resize

JavaScript表单验证
日期:2005-12-26 2:56:19

以下是引用片段:
<script language = javascript>
function test(){
if (document.sub.uname.value.length<4){
alert("姓名最小长度为4!");
document.sub.uname.select();
return false;
}
if(/[^A-Za-z0-9_]/.exec(document.sub.uname.value)!=null)
{
alert("姓名只能由数字、字母、下划线组成!");
document.sub.uname.select();
return false;
}
if (/[\s]/.exec(document.sub.upsw.value)!=null) {
alert("密码不能含有空白字符!");
document.sub.upsw.focus();
return false;
}
if (document.sub.upsw.value.length <4) {
alert("密码最小长度为4!");
document.sub.upsw.focus();
return false;
}
if (document.sub.upswd.value.length == 0) {
alert("请输入您的确认密码!");
document.sub.upswd.focus();
return false;
}
if (document.sub.upswd.value!=document.sub.upsw.value ) {
alert("您的密码与确认密码不匹配请从新输入!");
document.sub.upswd.focus();
return false;
}
if(document.sub.uemail.value.length !=0){
if(/@/.exec(document.sub.uemail.value)==null){
alert("请注意E-Mail的正确形式!");
document.sub.uemail.select();
return false;
}
}
if (isNaN(document.sub.uqq.value)){
alert("QQ需为数字形式!");
document.sub.uqq.select();
return false;
}
return true;
}
</script>

javascript 常用代码大全

以下是引用片段:

javascript 常用代码大全

digits[Number(d)] + decimals[i];
}
}
}

// Confirm and return the final output string:
if (outputCharacters == "")
{
outputCharacters = CN_ZERO + CN_DOLLAR;
}
if (decimal == "")
{
outputCharacters += CN_INTEGER;
}

outputCharacters = CN_SYMBOL + outputCharacters;
return outputCharacters;
}

Number.prototype.toImage = function()
{
var num = Array(
"#define t_width 3\n#define t_height 5\nstatic char t_bits[] = {0xF,0x5,0x5,0x5,0xF}",
"#define t_width 3\n#define t_height 5\nstatic char t_bits[] = {0x4,0x4,0x4,0x4,0x4}",
"#define t_width 3\n#define t_height 5\nstatic char t_bits[] = {0xF,0x4,0xF,0x1,0xF}",
"#define t_width 3\n#define t_height 5\nstatic char t_bits[] = {0xF,0x4,0xF,0x4,0xF}",
"#define t_width 3\n#define t_height 5\nstatic char t_bits[] = {0x5,0x5,0xF,0x4,0x4}",
"#define t_width 3\n#define t_height 5\nstatic char t_bits[] = {0xF,0x1,0xF,0x4,0xF}",
"#define t_width 3\n#define t_height 5\nstatic char t_bits[] = {0xF,0x1,0xF,0x5,0xF}",
"#define t_width 3\n#define t_height 5\nstatic char t_bits[] = {0xF,0x4,0x4,0x4,0x4}",
"#define t_width 3\n#define t_height 5\nstatic char t_bits[] = {0xF,0x5,0xF,0x5,0xF}",
"#define t_width 3\n#define t_height 5\nstatic char t_bits[] = {0xF,0x5,0xF,0x4,0xF}"
);

var str = this + "";
var iIndex
var result=""
for(iIndex=0;iIndex<str.length;iIndex++)
{
result +="<img src='javascript:" & num(iIndex) & "'">
}
return result;
}

/*
******************************************
其他函数扩充
******************************************
*/

/*
===========================================
//验证类函数
===========================================
*/
function IsEmpty(obj)
{
obj=document.getElementsByName(obj).item(0);
if(Trim(obj.value)=="")
{

if(obj.disabled==false && obj.readOnly==false)
{
obj.focus();
}
return true;
}
else
{
return false;
}
}

/*
===========================================
//无模式提示对话框
===========================================
*/
function modelessAlert(Msg)
{
window.showModelessDialog("javascript:alert(\""+escape(Msg)+"\");window.close();","","status:no;resizable:no;help:no;dialogHeight:height:30px;dialogHeight:40px;");
}

/*
===========================================
//页面里回车到下一控件的焦点
===========================================
*/
function Enter2Tab()
{
var e = document.activeElement;
if(e.tagName == "INPUT" &&
(
e.type == "text" ||
e.type == "password" ||
e.type == "checkbox" ||
e.type == "radio"
) ||
e.tagName == "SELECT")

{
if(window.event.keyCode == 13)
{
window.event.keyCode = 9;
}
}
}
////////打开此功能请取消下行注释
//document.onkeydown = Enter2Tab;

function ViewSource(url)
{
window.location = 'view-source:'+ url;
}

///////禁止右键
document.oncontextmenu = function() { return false;}

/*
******************************************
字符串函数扩充
******************************************
*/

/*
===========================================
//去除左边的空格
===========================================

*/
String.prototype.LTrim = function()
{
return this.replace(/(^ *)/g, "");
}

String.prototype.Mid = function(start,len)
{
if(isNaN(start)&&start<0)
{
return "";
}

if(isNaN(len)&&len<0)
{
return "";
}

return this.substring(start,len);
}

/*
===========================================
//去除右边的空格
===========================================
*/
String.prototype.Rtrim = function()
{
return this.replace(/( *$)/g, "");
}

/*
===========================================
//去除前后空格
===========================================
*/
String.prototype.Trim = function()
{
return this.replace(/(^ *)|( *$)/g, "");
}
/*
===========================================
//得到左边的字符串
===========================================
*/
String.prototype.Left = function(len)
{

if(isNaN(len)||len==null)
{
len = this.length;
}
else
{
if(parseInt(len)<0||parseInt(len)>this.length)
{
len = this.length;
}
}

return this.substring(0,len);
}

/*
===========================================
//得到右边的字符串
===========================================
*/
String.prototype.Right = function(len)
{

if(isNaN(len)||len==null)
{
len = this.length;
}
else
{
if(parseInt(len)<0||parseInt(len)>this.length)
{
len = this.length;
}
}

return this.substring(this.length-len,this.length);
}

/*
===========================================
//得到中间的字符串,注意从0开始
===========================================
*/
String.prototype.Mid = function(start,len)
{
if(isNaN(start)||start==null)
{
start = 0;
}
else
{
if(parseInt(start)<0)
{
start = 0;
}
}

if(isNaN(len)||len==null)
{
len = this.length;
}
else
{
if(parseInt(len)<0)
{
len = this.length;
}
}

return this.substring(start,start+len);
}

/*
===========================================
//在字符串里查找另一字符串:位置从0开始
===========================================
*/
String.prototype.InStr = function(str)
{

if(str==null)
{
str = "";
}

return this.indexOf(str);
}

/*
===========================================
//在字符串里反向查找另一字符串:位置0开始
===========================================
*/
String.prototype.InStrRev = function(str)
{

if(str==null)
{
str = "";
}

return this.lastIndexOf(str);
}

/*
===========================================
//计算字符串打印长度
===========================================
*/
String.prototype.LengthW = function()
{
return this.replace(/[^\x00-\xff]/g,"**").length;
}

/*
===========================================
//是否是正确的IP地址
===========================================
*/
String.prototype.isIP = function()
{

var reSpaceCheck = /^(\d+)\.(\d+)\.(\d+)\.(\d+)$/;

if (reSpaceCheck.test(this))
{
this.match(reSpaceCheck);
if (RegExp.$1 <= 255 && RegExp.$1 >= 0
&& RegExp.$2 <= 255 && RegExp.$2 >= 0
&& RegExp.$3 <= 255 && RegExp.$3 >= 0
&& RegExp.$4 <= 255 && RegExp.$4 >= 0)
{
return true;
}
else
{
return false;
}
}
else
{
return false;
}

}

/*
===========================================
//是否是正确的长日期
===========================================
*/
String.prototype.isDate = function()
{
var r = str.match(/^(\d{1,4})(-|\/)(\d{1,2})\2(\d{1,2}) (\d{1,2}):(\d{1,2}):(\d{1,2})$/);
if(r==null)
{
return false;
}
var d = new Date(r[1], r[3]-1,r[4],r[5],r[6],r[7]);
return (d.getFullYear()==r[1]&&(d.getMonth()+1)==r[3]&&d.getDate()==r[4]&&d.getHours()==r[5]&&d.getMinutes()==r[6]&&d.getSeconds()==r[7]);

}

/*
===========================================
//是否是手机
===========================================
*/
String.prototype.isMobile = function()
{
return /^0{0,1}13[0-9]{9}$/.test(this);
}

/*
===========================================
//是否是邮件
===========================================
*/
String.prototype.isEmail = function()
{
return /^\w+((-\w+)|(\.\w+))*\@[A-Za-z0-9]+((\.|-)[A-Za-z0-9]+)*\.[A-Za-z0-9]+$/.test(this);
}

/*
===========================================
//是否是邮编(中国)
===========================================
*/

String.prototype.isZipCode = function()
{
return /^[\\d]{6}$/.test(this);
}

/*
===========================================
//是否是有汉字
===========================================
*/
String.prototype.existChinese = function()
{
//[\u4E00-\u9FA5]為漢字﹐[\uFE30-\uFFA0]為全角符號
return /^[\x00-\xff]*$/.test(this);
}

/*
===========================================
//是否是合法的文件名/目录名
===========================================
*/
String.prototype.isFileName = function()
{
return !/[\\\/\*\?\|:"<>]/g.test(this);
}

/*
===========================================
//是否是有效链接
===========================================
*/
String.Prototype.isUrl = function()
{
return /^http:\/\/([\w-]+\.)+[\w-]+(/[\w-./?%&=]*)?$/.test(this);
}

/*
===========================================
//是否是有效的身份证(中国)
===========================================
*/
String.prototype.isIDCard = function()
{
var iSum=0;
var info="";
var sId = this;

var aCity={11:"北京",12:"天津",13:"河北",14:"山西",15:"内蒙古",21:"辽宁",22:"吉林",23:"黑龙江",31:"上海",32:"江苏",33:"浙江",34:"安徽",35:"福建",36:"江西",37:"山东",41:"河南",42:"湖北",43:"湖南",44:"广东",45:"广西",46:"海南",50:"重庆",51:"四川",52:"贵州",53:"云南",54:"西藏",61:"陕西",62:"甘肃",63:"青海",64:"宁夏",65:"新疆",71:"台湾",81:"香港",82:"澳门",91:"国外"};

if(!/^\d{17}(\d|x)$/i.test(sId))
{
return false;
}
sId=sId.replace(/x$/i,"a");
//非法地区
if(aCity[parseInt(sId.substr(0,2))]==null)
{
return false;
}

var sBirthday=sId.substr(6,4)+"-"+Number(sId.substr(10,2))+"-"+Number(sId.substr(12,2));

var d=new Date(sBirthday.replace(/-/g,"/"))

//非法生日
if(sBirthday!=(d.getFullYear()+"-"+ (d.getMonth()+1) + "-" + d.getDate()))
{
return false;
}
for(var i = 17;i>=0;i--)
{
iSum += (Math.pow(2,i) % 11) * parseInt(sId.charAt(17 - i),11);
}

if(iSum%11!=1)
{
return false;
}
return true;

}

/*
===========================================
//是否是有效的电话号码(中国)
===========================================
*/
String.prototype.isPhoneCall = function()
{
return /(^[0-9]{3,4}\-[0-9]{3,8}$)|(^[0-9]{3,8}$)|(^\([0-9]{3,4}\)[0-9]{3,8}$)|(^0{0,1}13[0-9]{9}$)/.test(this);
}

/*
===========================================
//是否是数字
===========================================
*/
String.prototype.isNumeric = function(flag)
{
//验证是否是数字
if(isNaN(this))
{

return false;
}

switch(flag)
{

case null://数字
case "":
return true;
case "+"://正数
return/(^\+?|^\d?)\d*\.?\d+$/.test(this);
case "-"://负数
return/^-\d*\.?\d+$/.test(this);
case "i"://整数
return/(^-?|^\+?|\d)\d+$/.test(this);
case "+i"://正整数
return/(^\d+$)|(^\+?\d+$)/.test(this);
case "-i"://负整数
return/^[-]\d+$/.test(this);
case "f"://浮点数
return/(^-?|^\+?|^\d?)\d*\.\d+$/.test(this);
case "+f"://正浮点数
return/(^\+?|^\d?)\d*\.\d+$/.test(this);
case "-f"://负浮点数
return/^[-]\d*\.\d$/.test(this);
default://缺省
return true;
}
}

/*
===========================================
//转换成全角
===========================================
*/
String.prototype.toCase = function()
{
var tmp = "";
for(var i=0;i<this.length;i++)
{
if(this.charCodeAt(i)>0&&this.charCodeAt(i)<255)
{
tmp += String.fromCharCode(this.charCodeAt(i)+65248);
}
else
{
tmp += String.fromCharCode(this.charCodeAt(i));
}
}
return tmp
}

/*
===========================================
//对字符串进行Html编码
===========================================
*/
String.prototype.toHtmlEncode = function
{
var str = this;

str=str.replace("&","&");
str=str.replace("<","<");
str=str.replace(">",">");
str=str.replace("'","'");
str=str.replace("\"",""");

return str;
}

qqdao(青青岛)

精心整理的输入判断js函数

关键词:字符串判断,字符串处理,字串判断,字串处理

//'*********************************************************
// ' Purpose: 判断输入是否为整数字
// ' Inputs: String
// ' Returns: True, False
//'*********************************************************
function onlynumber(str)
{
var i,strlength,tempchar;
str=CStr(str);
if(str=="") return false;
strlength=str.length;
for(i=0;i<strlength;i++)
{
tempchar=str.substring(i,i+1);
if(!(tempchar==0||tempchar==1||tempchar==2||tempchar==3||tempchar==4||tempchar==5||tempchar==6||tempchar==7||tempchar==8||tempchar==9))
{
alert("只能输入数字 ");
return false;
}
}
return true;
}
//'*********************************************************

//'*********************************************************
// ' Purpose: 判断输入是否为数值(包括小数点)
// ' Inputs: String
// ' Returns: True, False
//'*********************************************************
function IsFloat(str)
{ var tmp;
var temp;
var i;
tmp =str;
if(str=="") return false;
for(i=0;i<tmp.length;i++)
{temp=tmp.substring(i,i+1);
if((temp>='0'&& temp<='9')||(temp=='.')){} //check input in 0-9 and '.'
else { return false;}
}
return true;
}

//'*********************************************************
// ' Purpose: 判断输入是否为电话号码
// ' Inputs: String
// ' Returns: True, False
//'*********************************************************
function isphonenumber(str)
{
var i,strlengh,tempchar;
str=CStr(str);
if(str=="") return false;
strlength=str.length;
for(i=0;i<strlength;i++)
{
tempchar=str.substring(i,i+1);
if(!(tempchar==0||tempchar==1||tempchar==2||tempchar==3||tempchar==4||tempchar==5||tempchar==6||tempchar==7||tempchar==8||tempchar==9||tempchar=='-'))
{
alert("电话号码只能输入数字和中划线 ");
return(false);
}
}
return(true);
}
//'*********************************************************

//'*********************************************************
// ' Purpose: 判断输入是否为Email
// ' Inputs: String
// ' Returns: True, False
//'*********************************************************
function isemail(str)
{
var bflag=true

if (str.indexOf("'")!=-1) {
bflag=false
}
if (str.indexOf("@")==-1) {
bflag=false
}
else if(str.charAt(0)=="@"){
bflag=false
}
return bflag
}

//'*********************************************************
// ' Purpose: 判断输入是否含有为中文
// ' Inputs: String
// ' Returns: True, False
//'*********************************************************
function IsChinese(str)
{
if(escape(str).indexOf("%u")!=-1)
{
return true;
}
return false;
}
//'*********************************************************

//'*********************************************************
// ' Purpose: 判断输入是否含有空格
// ' Inputs: String
// ' Returns: True, False
//'*********************************************************
function checkblank(str)
{
var strlength;
var k;
var ch;
strlength=str.length;
for(k=0;k<=strlength;k++)
{
ch=str.substring(k,k+1);
if(ch==" ")
{
alert("对不起 不能输入空格 ");
return false;
}
}
return true;
}
//'*********************************************************

//'*********************************************************
// ' Purpose: 去掉Str两边空格
// ' Inputs: Str
// ' Returns: 去掉两边空格的Str
//'*********************************************************
function trim(str)
{
var i,strlength,t,chartemp,returnstr;
str=CStr(str);
strlength=str.length;
t=str;
for(i=0;i<strlength;i++)
{
chartemp=str.substring(i,i+1);
if(chartemp==" ")
{
t=str.substring(i+1,strlength);
}
else
{
break;
}
}
returnstr=t;
strlength=t.length;
for(i=strlength;i>=0;i--)
{
chartemp=t.substring(i,i-1);
if(chartemp==" ")
{
returnstr=t.substring(i-1,0);
}
else
{
break;
}
}
return (returnstr);
}

//'*********************************************************

//'*********************************************************
// ' Purpose: 将数值类型转化为String
// ' Inputs: int
// ' Returns: String
//'*********************************************************
function CStr(inp)
{
return(""+inp+"");
}
//'*********************************************************

//'*********************************************************
// ' Purpose: 去除不合法字符, ' " < >
// ' Inputs: String
// ' Returns: String
//'*********************************************************
function Rep(str)
{var str1;
str1=str;
str1=replace(str1,"'","`",1,0);
str1=replace(str1,'"',"`",1,0);
str1=replace(str1,"<","(",1,0);
str1=replace(str1,">",")",1,0);
return str1;
}
//'*********************************************************

//'*********************************************************
// ' Purpose: 替代字符
// ' Inputs: 目标String,欲替代的字符,替代成为字符串,大小写是否敏感,是否整字代替
// ' Returns: String
//'*********************************************************
function replace(target,oldTerm,newTerm,caseSens,wordOnly)
{ var wk ;
var ind = 0;
var next = 0;
wk=CStr(target);
if (!caseSens)
{
oldTerm = oldTerm.toLowerCase();
wk = target.toLowerCase();
}
while ((ind = wk.indexOf(oldTerm,next)) >= 0)
{
if (wordOnly)
{
var before = ind - 1;
var after = ind + oldTerm.length;
if (!(space(wk.charAt(before)) && space(wk.charAt(after))))
{
next = ind + oldTerm.length;
continue;
}
}
target = target.substring(0,ind) + newTerm + target.substring(ind+oldTerm.length,target.length);
wk = wk.substring(0,ind) + newTerm + wk.substring(ind+oldTerm.length,wk.length);
next = ind + newTerm.length;
if (next >= wk.length) { break; }
}
return target;
}
//'*********************************************************

几个判断,并强制设置焦点:
//+------------------------------------
// trim 去除字符串两端的空格
String.prototype.trim=function(){return this.replace(/(^ *)|( *$)/g,"")}
//-------------------------------------

// avoidDeadLock 避免设置焦点死循环问题
// 起死原因:以文本框为例,当一个文本框的输入不符合条件时,这时,鼠标点击另一个文本框,触发第一个文本框的离开事件
//   ,产生设置焦点动作。现在产生了第二个文本框的离开事件,因此也要设置第二个文本框的焦点,造成死锁。
// 解决方案:设置一个全局对象[key],记录当前触发事件的对象,若其符合条件,则释放该key;若其仍不符合,则key还是指
//   向该对象,别的对象触发不到设置焦点的语句。
/////////////////////////////////////////
// 文本框控制函数
//
/////////////////////////////////////////
var g_Obj = null;// 记住旧的控件
// hintFlag参数:0表示没有被别的函数调用,因此出现提示;1表示被调用,不出现警告信息
// focusFlag参数:指示是否要设置其焦点,分情况:0表示有的可为空;1表示有的不为空
// 避免死锁的公共部分
//+------------------------------------
function textCom(obj, hintFlag)
{
if (g_Obj == null)
g_Obj=event.srcElement;
else if ((g_Obj != null) && (hintFlag == 0) && (g_Obj != obj))
{
g_Obj = null;
return;
}
g_Obj.value = g_Obj.value.trim();
}
//-------------------------------------
// 文本框不为空
//+------------------------------------
function TBNotNull(obj, hintFlag)
{
if (g_Obj == null)
g_Obj=event.srcElement;
else if ((g_Obj != null) && (hintFlag == 0) && (g_Obj != obj))
{
g_Obj = null;
return;
}
g_Obj.value = g_Obj.value.trim();

if (g_Obj.value == "")
{
if (hintFlag == 0)
{
g_Obj.focus();
alert("内容不能为空!");
}
return false;
}
else
g_Obj = null;

return true;
}
//-------------------------------------
// 输入内容为数字
//+------------------------------------
function LetNumber(obj, hintFlag, focusFlag)
{
if (g_Obj == null)
g_Obj=event.srcElement;
else if ((g_Obj != null) && (hintFlag == 0) && (g_Obj != obj))
{
g_Obj = null;
return;
}
g_Obj.value = g_Obj.value.trim();

if ((g_Obj.value == "") || isNaN(g_Obj.value))
{
if (hintFlag == 0)
{

g_Obj.value = "";
if (focusFlag == 1)
g_Obj.focus();
else
g_Obj = null;
alert("输入的内容必须为数字!");
}
return false;
}
else
g_Obj = null;

return true;
}
//-------------------------------------
// 输入内容为整数
//+------------------------------------
function LetInteger(obj, hintFlag, focusFlag)
{
if (g_Obj == null)
g_Obj=event.srcElement;
else if ((g_Obj != null) && (hintFlag == 0) && (g_Obj != obj))
{
g_Obj = null;
return;
}
g_Obj.value = g_Obj.value.trim();

if (!/^\d*$/.test(g_Obj.value) || (g_Obj.value == ""))
{
if (hintFlag == 0)
{

g_Obj.value = "";
if (focusFlag == 1)
g_Obj.focus();
else
g_Obj = null;
alert("输入的内容必须为整数!");
}
return false;
}
else
g_Obj = null;

return true;
}
//-------------------------------------
// 输入内容为字母
//+------------------------------------
function LetLetter(obj, hintFlag, focusFlag)
{
if (g_Obj == null)
g_Obj=event.srcElement;
else if ((g_Obj != null) && (hintFlag == 0) && (g_Obj != obj))
{
g_Obj = null;
return;
}

if (!/^[A-Za-z]*$/.test(g_Obj.value))
{
if (hintFlag == 0)
{
alert("输入的内容必须为字母!");
g_Obj.value = "";
if (focusFlag == 1)
g_Obj.focus();
else
g_Obj = null;
}
return false;
}
else
{
g_Obj = null;
}

return true;
}
//-------------------------------------
// 内容大于某值
//+------------------------------------
function LetMoreThan(obj, leftNumber, hintFlag, focusFlag)
{
var ifAlert;// 是否出现警告
if (g_Obj == null)
g_Obj=event.srcElement;
else if ((g_Obj != null) && (hintFlag == 0) && (g_Obj != obj))
{
g_Obj = null;
return;
}

g_Obj.value = g_Obj.value.trim();
if (g_Obj.value == "")
ifAlert = 0;
else
ifAlert = 1;

if ((g_Obj.value == "") || (isNaN(g_Obj.value)) || (g_Obj.value < leftNumber))
{
if (hintFlag == 0)
{
g_Obj.value = "";
if (focusFlag == 1)
g_Obj.focus();
else
g_Obj = null;
// 更友好的提示
if (ifAlert == 1)
{
if (leftNumber == 0)
alert("内容必须为非负数!");
else
alert("输入的内容必须" + leftNumber + "以上!");
}
}
return false;
}
else
g_Obj = null;

return true;
}
//-------------------------------------
// 内容大于某值,整数
//+------------------------------------
function LetMoreThan_Int(obj, leftNumber, hintFlag, focusFlag)
{
var ifAlert;// 是否出现警告
if (g_Obj == null)
g_Obj=event.srcElement;
else if ((g_Obj != null) && (hintFlag == 0) && (g_Obj != obj))
{
g_Obj = null;
return;
}
g_Obj.value = g_Obj.value.trim();
if (g_Obj.value == "")
ifAlert = 0;
else
ifAlert = 1;
if ((g_Obj.value == "") || (isNaN(g_Obj.value) || g_Obj.value < leftNumber) || !/^\d*$/.test(g_Obj.value))
{
if (hintFlag == 0)
{
g_Obj.value = "";
if (focusFlag == 1)
g_Obj.focus();
else
{g_Obj = null;}
if (ifAlert == 1)// 当用户不输入的时候,不出现提示
{
// 更友好的提示
if (leftNumber == 0)
alert("内容必须为非负整数!");
else
alert("且必须在" + leftNumber + "以上!");
}
}
return false;
}
else
g_Obj = null;

return true;
}
//-------------------------------------
// 内容小于某值
//+------------------------------------
function LetLessThan(obj, rightNumber, hintFlag, focusFlag)
{
if (g_Obj == null)
g_Obj=event.srcElement;
else if ((g_Obj != null) && (hintFlag == 0) && (g_Obj != obj))
{
g_Obj = null;
return;
}
g_Obj.value = g_Obj.value.trim();

if ((g_Obj.value == "") || (isNaN(g_Obj.value) || g_Obj.value > rightNumber))
{
if (hintFlag == 0)
{
g_Obj.value = "";
if (focusFlag == 1)
g_Obj.focus();
else
g_Obj = null;
alert("输入的内容必须在" + rightNumber + "以下!");
}
return false;
}
else
{g_Obj = null;}

return true;
}
//-------------------------------------
// 内容介于两值中间
//+------------------------------------
function LetMid(obj, leftNumber, rightNumber, hintFlag, focusFlag)
{
var ifAlert;// 是否出现警告
if (g_Obj == null)
g_Obj=event.srcElement;
else if ((g_Obj != null) && (hintFlag == 0) && (g_Obj != obj))
{
g_Obj = null;
return;
}
g_Obj.value = g_Obj.value.trim();
if (g_Obj.value == "")
ifAlert = 0;
else
ifAlert = 1;
// 首先应该为数字
if (LetNumber(g_Obj, 1))
{
if (!(LetMoreThan(obj,leftNumber,1,0) && LetLessThan(obj,rightNumber,1,0)))
{
if (hintFlag == 0)
{
g_Obj.value = "";
if (focusFlag == 1)
g_Obj.focus();
else
g_Obj = null;
if (ifAlert == 1)// 当用户不输入的时候,不出现提示
alert("输入的内容必须介于" + leftNumber + "和" + rightNumber + "之间!");
}

return false;
}
else
{g_Obj = null;}
}
else
{
if (hintFlag == 0)
{

g_Obj.value = "";
if (focusFlag == 1)
g_Obj.focus();
else
g_Obj = null;
if (ifAlert == 1)
alert("输入的内容必须为数字!\n" +
"且介于" + leftNumber + "和" + rightNumber + "之间!");
}

return false;
}

return true;
}
//-------------------------------------
/////////////////////////////////////////
// 下拉框
/////////////////////////////////////////
// 下拉框,务必选择
//+------------------------------------
function onSelLostFocus(obj)
{
if (g_Obj == null)
{
g_Obj=event.srcElement;
}
else if ((g_Obj!=null) && (g_Obj!=obj))
{
g_Obj = null;
return;
}

if (g_Obj.selectedIndex == 0)
{
g_Obj.focus();
}
else
{
g_Obj = null;
}
}

/*
随风JavaScript函数库
请把经过测试的函数加入库
*/

/********************
函数名称:StrLenthByByte
函数功能:计算字符串的字节长度,即英文算一个,中文算两个字节
函数参数:str,为需要计算长度的字符串
********************/
function StrLenthByByte(str)
{
var len;
var i;
len = 0;
for (i=0;i<str.length;i++)
{
if (str.charCodeAt(i)>255) len+=2; else len++;
}
return len;
}

/********************
函数名称:IsEmailAddress
函数功能:检查Email邮件地址的合法性,合法返回true,反之,返回false
函数参数:obj,需要检查的Email邮件地址
********************/
function IsEmailAddress(obj)
{
var pattern=/^[a-zA-Z0-9\-]+@[a-zA-Z0-9\-\.]+\.([a-zA-Z]{2,3})$/;
if(pattern.test(obj))
{
return true;
}
else
{
return false;
}
}

/********************
函数名称:PopWindow
函数功能:弹出新窗口
函数参数:pageUrl,新窗口地址;WinWidth,窗口的宽;WinHeight,窗口的高
********************/
function PopWindow(pageUrl,WinWidth,WinHeight)
{
var popwin=window.open(pageUrl,"PopWin","scrollbars=yes,toolbar=no,location=no,directories=no,status=no,menubar=no,resizable=no,width="+WinWidth+",height="+WinHeight);
return false;
}

/********************
函数名称:PopRemoteWindow
函数功能:弹出可以控制父窗体的原程窗口
函数参数:pageUrl,新窗口地址;
调用方法:打开窗口:<a href="javascript:popRemoteWindow(url);">Open</a>
控制父窗体:opener.location=url;当然还可以有其他的控制
********************/
function PopRemoteWindow(pageUrl)
{
var remote=window.open(url,"RemoteWindow","scrollbars=yes,toolbar=yes,location=yes,directories=yes,status=yes,menubar=yes,resizable=yes");
if(remote.opener==null)
{
remote.opener=window;
}
}

/********************
函数名称:IsTelephone
函数功能:固话,手机号码检查函数,合法返回true,反之,返回false
函数参数:obj,待检查的号码
检查规则:
  (1)电话号码由数字、"("、")"和"-"构成
  (2)电话号码为3到8位
  (3)如果电话号码中包含有区号,那么区号为三位或四位
  (4)区号用"("、")"或"-"和其他部分隔开
  (5)移动电话号码为11或12位,如果为12位,那么第一位为0
  (6)11位移动电话号码的第一位和第二位为"13"
  (7)12位移动电话号码的第二位和第三位为"13"
********************/
function IsTelephone(obj)
{
var pattern=/(^[0-9]{3,4}\-[0-9]{3,8}$)|(^[0-9]{3,8}$)|(^\([0-9]{3,4}\)[0-9]{3,8}$)|(^0{0,1}13[0-9]{9}$)/;
if(pattern.test(obj))
{
return true;
}
else
{
return false;
}
}

/********************
函数名称:IsLegality
函数功能:检查字符串的合法性,即是否包含" '字符,包含则返回false;反之返回true
函数参数:obj,需要检测的字符串
********************/
function IsLegality(obj)
{
var intCount1=obj.indexOf("\"",0);
var intCount2=obj.indexOf("\'",0);
if(intCount1>0 || intCount2>0)
{
return false;
}
else
{
return true;
}
}

/********************
函数名称:IsNumber
函数功能:检测字符串是否全为数字
函数参数:str,需要检测的字符串
********************/
function IsNumber(str)
{
var number_chars = "1234567890";
var i;
for (i=0;i<str.length;i++)
{
if (number_chars.indexOf(str.charAt(i))==-1) return false;
}
return true;
}

/********************
函数名称:Trim
函数功能:去除字符串两边的空格
函数参数:str,需要处理的字符串
********************/
function Trim(str)
{
return str.replace(/(^ *)|( *$)/g, "");
}

/********************
函数名称:LTrim
函数功能:去除左边的空格
函数参数:str,需要处理的字符串
********************/
function LTrim(str)
{
return str.replace(/(^ *)/g, "");
}

/********************
函数名称:RTrim
函数功能:去除右边的空格
函数参数:str,需要处理的字符串
********************/
function RTrim(str)
{
return this.replace(/( *$)/g, "");
}

/********************
函数名称:IsNull
函数功能:判断给定字符串是否为空
函数参数:str,需要处理的字符串
********************/
function IsNull(str)
{
if(Trim(str)=="")
{
return false;
}
else
{
return true;
}
}

/********************
函数名称:CookieEnabled
函数功能:判断cookie是否开启
********************/
function CookieEnabled()
{
return (navigator.cookieEnabled)? true : false;
}

/*字符串替换方法*/
function StrReplace(srcString,findString,replaceString,start)
{
//code
}

/*客户端HTML编码*/
function HtmlEncode(str)
{
//code
}

/********************************************************************
**
*函数功能:判断是否是闰年*
*输入参数:数字字符串*
*返回值:true,是闰年/false,其它*
*调用函数:*
**
********************************************************************/
function IsLeapYear(iYear)
{
if (iYear+"" == "undefined" || iYear+""== "null" || iYear+"" == "")
return false;

iYear = parseInt(iYear);
varisValid= false;

if((iYear % 4 == 0 && iYear % 100 != 0) || iYear % 400 == 0)
isValid= true;

return isValid;
}
/********************************************************************
**
*函数功能:取出指定年、月的最后一天*
*输入参数:年份,月份*
*返回值:某年某月的最后一天*
*调用函数:IsLeapYear*
**
********************************************************************/
function GetLastDay(iYear,iMonth)
{
iYear = parseInt(iYear);
iMonth = parseInt(iMonth);

variDay = 31;

if((iMonth==4||iMonth==6||iMonth==9||iMonth==11)&&iDay == 31)
iDay = 30;

if(iMonth==2 )
if (IsLeapYear(iYear))
iDay = 29;
else
iDay = 28;
return iDay;
}
/********************************************************************
**
*函数功能:去字符串的头空和尾空*
*输入参数:字符串*
*返回值:字符串/null如果输入字符串不正确*
*调用函数:TrimLeft() 和 TrimRight()*
**
********************************************************************/
function Trim( str )
{
varresultStr ="";

resultStr =TrimLeft(str);
resultStr =TrimRight(resultStr);

return resultStr;
}

/********************************************************************
**
*函数功能:去字符串的头空*
*输入参数:字符串*
*返回值:字符串/null如果输入字符串不正确*
*调用函数:*
**
********************************************************************/
function TrimLeft( str )
{
varresultStr ="";
vari =len= 0;

if (str+"" == "undefined" || str ==null)
return null;

str+= "";

if (str.length == 0)
resultStr ="";
else
{
len= str.length;

while ((i <= len) && (str.charAt(i)== " "))
i++;

resultStr =str.substring(i, len);
}

return resultStr;
}

/********************************************************************
**
*函数功能:去字符串的尾空*
*输入参数:字符串*
*返回值:字符串/null如果输入字符串不正确*
*调用函数:*
**
********************************************************************/
function TrimRight(str)
{
varresultStr ="";
vari =0;

if (str+"" == "undefined" || str ==null)
return null;

str+= "";

if (str.length == 0)
resultStr ="";
else
{
i =str.length - 1;
while ((i >= 0)&& (str.charAt(i) == " "))
i--;

resultStr =str.substring(0, i + 1);
}

return resultStr;
}

/********************************************************************
**
*函数功能:判断输入的字符串是否为数字*
*输入参数:输入的对象*
*返回值:true-数字/false-非数字*
*调用函数:*
**
********************************************************************/
function isNumber(objName)
{
var strNumber = objName.value;
var intNumber;

if(Trim(strNumber) == "")
{
return true;
}

intNumber = parseInt(strNumber, 10);
if (isNaN(intNumber))
{
alert("请输入数字.");
objName.focus();
return false;
}
return true;
}

/********************************************************************
**
*函数功能:判断输入的字符串是否为数字*
*输入参数:输入的对象*
*返回值:true-数字/false-非数字*
*调用函数:*
**
********************************************************************/
function isFloat(objName)
{
var strFloat = objName.value;
var intFloat;

if(Trim(strFloat) == "")
{
return true;
}

intFloat = parseFloat(strFloat);
if (isNaN(intFloat))
{
alert("Please input a number.");
objName.focus();
return false;
}
return true;
}

}

/********************************************************************
**
*函数功能:判断输入的字符串是否为合法的时间*
*输入参数:输入的字符串*
*返回值:true-合法的时间/false-非法的时间*
*调用函数:*
**
********************************************************************/
function checkDate(strDate)
{
var strDateArray;
var strDay;
var strMonth;
var strYear;
var intday;
var intMonth;
var intYear;
var strSeparator = "-";
var err = 0;

strDateArray = strDate.split(strSeparator);

if (strDateArray.length != 3)
{
err = 1;
return false;
}
else
{
strYear = strDateArray[0];
strMonth = strDateArray[1];
strDay = strDateArray[2];
}

intday = parseInt(strDay, 10);
if (isNaN(intday))
{
err = 2;
return false;
}
intMonth = parseInt(strMonth, 10);
if (isNaN(intMonth))
{
err = 3;
return false;
}
intYear = parseInt(strYear, 10);
if(strYear.length != 4)
{
return false;
}
if (isNaN(intYear))
{
err = 4;
return false;
}

if (intMonth>12 || intMonth<1)
{
err = 5;
return false;
}

if ((intMonth == 1 || intMonth == 3 || intMonth == 5 || intMonth == 7 || intMonth == 8 || intMonth == 10 || intMonth == 12) && (intday > 31 || intday < 1))
{
err = 6;
return false;
}

if ((intMonth == 4 || intMonth == 6 || intMonth == 9 || intMonth == 11) && (intday > 30 || intday < 1))
{
err = 7;
return false;
}

if (intMonth == 2)
{
if (intday < 1)
{
err = 8;
return false;
}

if (LeapYear(intYear) == true)
{
if (intday > 29)
{
err = 9;
return false;
}
}
else
{
if (intday > 28)
{
err = 10;
return false;
}
}
}

return true;
}

/********************************************************************
**
*函数功能:判断是否为闰年*
*输入参数:输入的年*
*返回值:true-是/false-不是*
*调用函数:*
**
********************************************************************/
function LeapYear(intYear)
{
if (intYear % 100 == 0)
{
if (intYear % 400 == 0) { return true; }
}
else
{
if ((intYear % 4) == 0) { return true; }
}
return false;
}

/********************************************************************
*函数功能:*
********************************************************************/
function formDateCheck(year,month,day)
{
var strY = Trim(year);
var strM = Trim(month);
var strD = Trim(day);
var strDate = strY + "-" + strM + "-" + strD;
if((strY + strM + strD) != "")
{
if(!checkDate(strDate))
{
return false;
}
}
return true;
}

/********************************************************************
*函数功能:将form所有输入字段重置*
********************************************************************/
function setFormReset(objForm)
{
objForm.reset();
}
/********************************************************************
*函数功能:计算字符串的实际长度*
********************************************************************/

function strlen(str)
{
var len;
var i;
len = 0;
for (i=0;i<str.length;i++)
{
if (str.charCodeAt(i)>255) len+=2; else len++;
}
return len;
}
/********************************************************************
*函数功能:判断输入的字符串是不是中文*
********************************************************************/

function isCharsInBag (s, bag)
{
var i,c;
for (i = 0; i < s.length; i++)
{
c = s.charAt(i);//字符串s中的字符
if (bag.indexOf(c) > -1)
return c;
}
return "";
}

function ischinese(s)
{
var errorChar;
var badChar = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789><,[]{}?/+=|\'\":;~!#$%()`";
errorChar = isCharsInBag( s, badChar)
if (errorChar != "" )
{
//alert("请重新输入中文\n");
return false;
}

return true;
}

/********************************************************************
*函数功能:判断输入的字符串是不是英文*
********************************************************************/

function isCharsInBagEn (s, bag)
{
var i,c;
for (i = 0; i < s.length; i++)
{
c = s.charAt(i);//字符串s中的字符
if (bag.indexOf(c) <0)
return c;
}
return "";
}

function isenglish(s)
{
var errorChar;
var badChar = " ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz";
errorChar = isCharsInBagEn( s, badChar)
if (errorChar != "" )
{
//alert("请重新输入英文\n");
return false;
}

return true;
}
function isnum(s)
{
var errorChar;
var badChar = "0123456789";
errorChar = isCharsInBagEn( s, badChar)
if (errorChar != "" )
{
//alert("请重新输入英文\n");
return false;
}

return true;

自动显示TXT文本的内容
把如下代码加入<body>区域中
<script language=vbscript>
Function bytes2BSTR(vIn)
strReturn = ""
For i = 1 To LenB(vIn)
ThisCharCode = AscB(MidB(vIn,i,1))
If ThisCharCode < &H80 Then
strReturn = strReturn & Chr(ThisCharCode)
Else
NextCharCode = AscB(MidB(vIn,i+1,1))
strReturn = strReturn & Chr(CLng(ThisCharCode) * &H100 + CInt(NextCharCode))
i = i + 1
End If
Next
bytes2BSTR = strReturn
End Function
</script>
<script language="JavaScript">
var xmlUrl = new ActiveXObject('Microsoft.XMLHTTP');
xmlUrl.Open('GET','1.txt');
xmlUrl.Send();
setTimeout('alert(bytes2BSTR(xmlUrl.ResponseBody))',2000);
</script>

我也来帖几个:
//detect client browse version
function testNavigator(){
var message="系统检测到你的浏览器的版本比较低,建议你使用IE5.5以上的浏览器,否则有的功能可能不能正常使用.你可以到http://www.microsoft.com/china/免费获得IE的最新版本!";
var ua=navigator.userAgent;
var ie=false;
if(navigator.appName=="Microsoft Internet Explorer")
{
ie=true;
}
if(!ie){
alert(message);
return;
}
var IEversion=parseFloat(ua.substring(ua.indexOf("MSIE ")+5,ua.indexOf(";",ua.indexOf("MSIE "))));
if(IEversion< 5.5){
alert(message);
return;
}
}

//detect client browse version
function testNavigator(){
var message="系统检测到你的浏览器的版本比较低,建议你使用IE5.5以上的浏览器,否则有的功能可能不能正常使用.你可以到http://www.microsoft.com/china/免费获得IE的最新版本!";
var ua=navigator.userAgent;
var ie=false;
if(navigator.appName=="Microsoft Internet Explorer")
{
ie=true;
}
if(!ie){
alert(message);
return;
}
var IEversion=parseFloat(ua.substring(ua.indexOf("MSIE ")+5,ua.indexOf(";",ua.indexOf("MSIE "))));
if(IEversion< 5.5){
alert(message);
return;
}
}

//ensure current window is the top window
function checkTopWindow(){
if(window.top!=window && window.top!=null){
window.top.location=window.location;
}
}

//force close window
function closeWindow()
{
var ua=navigator.userAgent;
var ie=navigator.appName=="Microsoft Internet Explorer"?true:false;
if(ie)
{
var IEversion=parseFloat(ua.substring(ua.indexOf("MSIE ")+5,ua.indexOf(";",ua.indexOf("MSIE "))));
if(IEversion< 5.5)
{
var str = '<object id=noTipClose classid="clsid:ADB880A6-D8FF-11CF-9377-00AA003B7A11">'
str += '<param name="Command" value="Close"></object>';
document.body.insertAdjacentHTML("beforeEnd", str);
try
{
document.all.noTipClose.Click();
}
catch(e){}
}
else
{
window.opener =null;
window.close();
}
}
else
{
window.close()
}
}

//tirm string
function trim(s)
{
return s.replace( /^ */, "" ).replace( / *$/, "" );
}

//URI encode
function encode(content){
return encodeURI(content);
}

//URI decode
function decode(content){
return decodeURI(content);
}

这些都我的原创.
打开calendar选择,可以限制是否可选择当前日期后的日期.
//open a calendar window.
function openCalender(ctlValue){
var url="/twms/component/calendar.html";
var param="dialogHeight:200px;dialogWidth:400px;center:yes;status:no;help:no;scroll:yes;resizable:yes;";
var result=window.showModalDialog(url,ctlValue.value,param);
if(result!=null && result!="" && result!="undefined"){
ctlValue=result;
}
}

calendar.html
<html>
<head>
<title>选择日期:</title>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<link href="/twms/css/common.css" type="text/css" rel="stylesheet">
<script language="JavaScript">
var limit=true;

function runNian(The_Year)
{
if ((The_Year%400==0) || ((The_Year%4==0) && (The_Year%100!=0)))
return true;
else
return false;
}

function getWeekday(The_Year,The_Month)
{

var Allday=0;
if (The_Year>2000)
{

for (i=2000 ;i<The_Year; i++)
{
if (runNian(i))
Allday += 366;
else
Allday += 365;
}

for (i=2; i<=The_Month; i++)
{
switch (i)
{
case 2 :
if (runNian(The_Year))
Allday += 29;
else
Allday += 28;
break;
case 3 : Allday += 31; break;
case 4 : Allday += 30; break;
case 5 : Allday += 31; break;
case 6 : Allday += 30; break;
case 7 : Allday += 31; break;
case 8 : Allday += 31; break;
case 9 : Allday += 30; break;
case 10 : Allday += 31; break;
case 11 : Allday += 30; break;
case 12 : Allday += 31; break;

}
}
}

switch (The_Month)
{
case 1:return(Allday+6)%7;

case 2 :
if (runNian(The_Year))
return (Allday+1)%7;
else
return (Allday+2)%7;

case 3:return(Allday+6)%7;
case 4:return (Allday+7)%7;
case 5:return(Allday+6)%7;
case 6:return (Allday+7)%7;
case 7:return(Allday+6)%7;
case 8:return(Allday+6)%7;
case 9:return (Allday+7)%7;
case 10:return(Allday+6)%7;
case 11:return (Allday+7)%7;
case 12:return(Allday+6)%7;

}
}

function chooseDay(The_Year,The_Month,The_Day)
{
var Firstday;
Firstday = getWeekday(The_Year,The_Month);
showCalender(The_Year,The_Month,The_Day,Firstday);
}

function nextMonth(The_Year,The_Month)
{
if (The_Month==12)
chooseDay(The_Year+1,1,0);
else
chooseDay(The_Year,The_Month+1,0);
}

function prevMonth(The_Year,The_Month)
{
if (The_Month==1)
chooseDay(The_Year-1,12,0);
else
chooseDay(The_Year,The_Month-1,0);
}

function prevYear(The_Year,The_Month)
{
chooseDay(The_Year-1,The_Month,0);
}

function nextYear(The_Year,The_Month)
{
chooseDay(The_Year+1,The_Month,0);
}

function showCalender(The_Year,The_Month,The_Day,Firstday)
{
var Month_Day;
var ShowMonth;
var today= new Date();
//alert(today.getMonth());

switch (The_Month)
{
case 1 : ShowMonth = "一月"; Month_Day = 31; break;
case 2 :
ShowMonth = "二月";
if (runNian(The_Year))
Month_Day = 29;
else
Month_Day = 28;
break;
case 3 : ShowMonth = "三月"; Month_Day = 31; break;
case 4 : ShowMonth = "四月"; Month_Day = 30; break;
case 5 : ShowMonth = "五月"; Month_Day = 31; break;
case 6 : ShowMonth = "六月"; Month_Day = 30; break;
case 7 : ShowMonth = "七月"; Month_Day = 31; break;
case 8 : ShowMonth = "八月"; Month_Day = 31; break;
case 9 : ShowMonth = "九月"; Month_Day = 30; break;
case 10 : ShowMonth = "十月"; Month_Day = 31; break;
case 11 : ShowMonth = "十一月"; Month_Day = 30; break;
case 12 : ShowMonth = "十二月"; Month_Day = 31; break;
}

var tableTagBegin="<Table cellpadding=0 cellspacing=0 border=1 bordercolor=#999999 width=95% align=center valign=top>";
var blankNextTd="<td width=0>>></td>";
var blankPrevTd="<td width=0><<</td>";
var blankDayTd="<td align=center bgcolor=#CCCCCC> </td>";
var nextYearTd="<td width=0 onclick=nextYear("+The_Year+","+The_Month+") style='cursor:hand'>>></td>";
var prevYearTd="<td width=0 onclick=prevYear("+The_Year+","+The_Month+") style='cursor:hand'><<</td>";
var nextMonthTd="<td width=0 onclick=nextMonth("+The_Year+","+The_Month+") style='cursor:hand'>>></td>";
var prevMonthTd="<td width=0 onclick=prevMonth("+The_Year+","+The_Month+") style='cursor:hand'><<</td>";
var valueTdTagBegin="<td width=100 align=center colspan=5>";

var weekTextTr="<Tr align=center bgcolor=#999999>";
weekTextTr+="<td><strong><font color=#0000CC>日</font></strong>";
weekTextTr+="<td><strong><font color=#0000CC>一</font></strong>";
weekTextTr+="<td><strong><font color=#0000CC>二</font></strong>";
weekTextTr+="<td><strong><font color=#0000CC>三</font></strong>";
weekTextTr+="<td><strong><font color=#0000CC>四</font></strong>";
weekTextTr+="<td><strong><font color=#0000CC>五</font></strong>";
weekTextTr+="<td><strong><font color=#0000CC>六</font></strong>";
weekTextTr+="</Tr>";

var text=tableTagBegin;

text+="<Tr>"+prevYearTd+valueTdTagBegin+The_Year+"</td>";
if(limit && (The_Year>=today.getYear()) ){
text+=blankNextTd;
}
else{
text+=nextYearTd;
}
text+="</Tr>";

text+="<Tr>"+prevMonthTd+valueTdTagBegin+The_Month+"</td>";
if(limit && (The_Year>=today.getYear()) && (The_Month>=(today.getMonth()+1)) ){
text+=blankNextTd;
}
else{
text+=nextMonthTd;
}
text+="</Tr>"+weekTextTr;

text+="<Tr>";

for (var i=1; i<=Firstday; i++){
text+=blankDayTd;
}

for (var i=1; i<=Month_Day; i++)
{
var bgColor="";
if ( (The_Year==today.getYear()) && (The_Month==today.getMonth()+1) && (i==today.getDate()) )
{
bgColor = "#FFCCCC";
}
else
{
bgColor = "#CCCCCC";
}

if (The_Day==i)
{
bgColor = "#FFFFCC";
}

if(limit && (The_Year>=today.getYear()) && (The_Month>=(today.getMonth()+1)) && (i>today.getDate()))
{
text+="<td align=center bgcolor='#CCCCCC' >" + i + "</td>";
}
else
{
text+="<td align=center bgcolor=" + bgColor + " style='cursor:hand' onclick=getSelectedDay(" + The_Year + "," + The_Month + "," + i + ")>" + i + "</td>";
}

Firstday = (Firstday + 1)%7;
if ((Firstday==0) && (i!=Month_Day)) {
text += "</Tr><Tr>";
}
}

if (Firstday!=0)
{
for (var i=Firstday; i<7; i++)
{
text+=blankDayTd;
}

text+= "</Tr>";
}

text += "</Table>";
document.all.divContainer.innerHTML=text;
}

function getSelectedDay(The_Year,The_Month,The_Day){
window.returnValue=The_Year + "-" + format(The_Month) + "-" + format(The_Day);
//alert(window.returnValue);
window.close();
}

function format(i){
if(i<10){
return "0"+i;
}
else{
return i;
}
}

function init(){
var args=window.dialogArguments.split("-");
//alert(args);
var year=parseInt(args[0]);
var month=parseInt(args[1]);
var day=parseInt(args[2]);
var firstDay=getWeekday(year,month);
showCalender(year,month,day,firstDay);
}
</script>
</head>
<body style="text-align:center">
<div id="divContainer"/>
<script language=javascript>
init();
</script>
</body>
</html>

//parse the search string,then return a object.
//object info:
//--property:
//----result:a array contained a group of name/value item.the item is nested class.
//--method:
//----getNamedItem(name):find item by name.if not exists,return null;
//----appendItem(name,value):apppend an item into result tail;
//----removetItem(name):remove item which contained in result and named that name.
//----toString():override Object.toString();return a regular query string.
function parseQueryString(search){
var object=new Object();
object.getNamedItem=getNamedItem;
object.appendItem=appendItem;
object.removeItem=removeItem;
object.toString=toString;
object.result=new Array();

function parseItem(itemStr){
var arStr=itemStr.split("=");
var obj=new Object();
obj.name

【上篇】
【下篇】

抱歉!评论已关闭.