js判断输入是否中文,数字,身份证等等js函数集合第1

Posted on

js判断输入是否中文,数字,身份证等等js函数集合第1-3页javascript技巧脚本之家

脚 本 之 家 www.jb51.net

脚本之家

js判断输入是否中文,数字,身份证等等js函数集合第1/3页

发布:dxy 字体:[增加 减小] 类型:转载

收集的比较多,建议大家查找搜寻,常用的js判断函数 / 判断指定的内容是否为空,若为空则弹出 警告框 // function isEmpty(theValue, strMsg){ if(theValue==""){ alert(strMsg+"不能为空!"); return true; } return false; } // 中文判断函数,允许生僻字用英文“/”代替 返回true表示是符合条件,返回false表示不符合 // function isChinese(str){ var badChar ="ABCDEFGHIJKLMNOPQRSTUVWXYZ"; badChar += "abcdefghijklmnopqrstuvwxyz"; badChar += "0123456789"; badChar += " "+" ";//半角与全角空格 badChar += "`~!@/#$%^&()-_=+]\|:;\"\'<,>?/";//不包含/或.的英文符号 if(""==str){ return false; } for(var i=0;i var c = str.charAt(i);//字符串str中的字符 if(badChar.indexOf(c) > -1){ return false; } } return true; } // 数字判断函数,返回true表示是全部数字,返回false表示不全部是数字 // function isNumber(str){ if(""==str){ return false; } var reg = /\D/; return str.match(reg)==null; } // 判断给定的字符串是否为指定长度的数字 是返回true,不是返回false // function isNumber_Ex(str,len){ if(""==str){ return false; } if(str.length!=len){ return false; } if(!isNumber(str)){ return false; } return true; } // money判断函数,允许第一位为"-"来表示欠钱 返回true表示格式正确,返回false表示格式错误 // function isMoney(str){ if(""==str){ return false; } for(var i=0;i var c = str.charAt(i); if(i==0){ if(c!="-"&&(c<"0"||c>"9")){ return false; }else if(c=="-"&&str.length==1){ return false; } }else if(c < "0" || c > "9"){ return false; } } return true; } // 英文判断函数,返回true表示是全部英文,返回false表示不全部是英文 // function isLetter(str){ if(""==str){ return false; } for(var i=0;i var c = str.charAt(i); if((c<"a"||c>"z")&&(c<"A"||c>"Z")){ return false; } } return true; } // 空格判断,当包含有空格返回false,当不包含一个空格返回true ""不能被判断 // function notInSpace(str){ if(""==str){ return false; } var badChar =" "; badChar += " "; for(var i=0;i var c = str.charAt(i);//字符串str中的字符 if(badChar.indexOf(c) > -1){ return false; } } return true; } // 发票号判断函数,返回true表示是发票号,返回false表示不符合规范 // function isFPH(str){ if(""==str){ return false; } for(var i=0;i var c = str.charAt(i); if((c < "0" || c > "9") && (c!="-")&&(c!=",")){ return false; } } return true; } 当前1/3页 123下一页

Tags:js 中文 数字 身份证 复制链接发给好友收藏本文打印本文关闭本文返回首页

上一篇:js判断是否有中文的脚本_js判断中文方法集合

下一篇:Javascript 中介者模式实例

同类文章

文章评论

共有 **位脚本之家网友发表了评论我来说两句

最 近 更 新

关于本站 - 广告合作 - 联系我们 - 免责声明 - 网站地图 - 意见反馈 - 返回顶部

欢迎转载我们的原创作品,转载请注明出处。苏ICP备06043639号 Copyright © 2006-2010 www.jb51.net online services. All rights reserved. . QQ群1:14624678 QQ群2:36345889或业务QQ:461478385

javascript js 判断页面是否加载完成

Posted on

javascript js 判断页面是否加载完成 - 网络逸人 - walance - 和讯博客

http://hexun.com/walance > 复制 > 收藏 | 手机看个人门户

和讯博客 | 和讯首页

网络逸人

56en 个人门户

博客 相册

音乐 转帖

博揽 邮箱

朋友圈 好友

留言

进入我的家

载入中

自定义HTML载入中... loading

快速链接

[和讯博客]

[发表文章] [博客设置]

[文章管理] 搜索

RSS 2.0 使用和讯博揽订阅 博客印书

javascript js 判断页面是否加载完成 [转贴 2009-02-05 11:39:05]

我顶 字号:大 中 小

之前看别人用的是document.onreadystatechange的方法来监听状态改变,然后用document.readyState == “complete”判断是否加载完成,代码如下: document.onreadystatechange = subSomething;//当页面加载状态改变的时候执行这个方法. function subSomething() { if(document.readyState == “complete”) //当页面加载状态为完全结束时进入 myform.submit(); //这是你的操作 }

这种办法对一些页面简单,DOM较少的页面是好的解决方案,但是最近页面里面有嵌入flash,发现flash有自己载入东西的功能,跟页面无关,所以用之前的办法行不通啦,自己变通了一下,用setInterval来监听事件。

代码如下:

var start; window.onload = function () { start = setInterval(’updateImg()’, 1000); } function updateImg() { if (document.readyState == “complete”) { try{ … clearInterval(start);//执行成功,清除监听 }catch(err){return true;} } }

—————-2008-12-4————— 改正一下,因为之前没有测试firefox的,所以并没有发现firefox不支持document.readyState == “complete”,firefox的加载完成事件用window.onload就可以了,所以这个代码修改如下:

var start; window.onload = function () { if(document.all) {//简单判断是否是IE start = setInterval(’updateImg()’, 1000); } else { …//要执行的语句 } } function updateImg() { if (document.readyState == “complete”) { try{ … clearInterval(start);//执行成功,清除监听 }catch(err){return true;} } }

标签: JavaScript 进入JavaScript吧 . 所属版块: 科技

[收藏到我的转帖] [引用通告]

[推荐] [评论] [举报] [打印] 点击数: 评论数: 我 顶 !觉得精彩就顶一下,顶的多了,文章将出现在更重要的位置上。

下一篇: [JS操作html时childNodes的替代方法兼容IE与...

上一篇: 修改2003系统默认上传文件大小

发表评论

大 名: [登录] [注册成为和讯用户]

(不填写则显示为匿名者) 网 址:

(您的网址,可以不填) 标 题:

内 容: 字数上限为2000字

请根据下图中的字符输入验证码:

0 验证码点这里显示验证码。 (您的评论将有可能审核后才能发表) 和讯个人门户 v1.0 | 和讯家园 | 意见反馈

Ant核心类型

Posted on

Ant核心类型

Ant核心类型:

利用Ant工具的核心类型能方便地定义变量,并可在target中进行引用。 所有Ant工具的类型都有id和refid两个属性,id作为这个类型的唯一标识,refid只用指定要引用的类型。


1.Assertions Type:断言类型

断言类型只有enableSystemAssertions一个属性,表示是否允许系统断言,默认为unspecified,代表没有指定

这里允许系统断言,在Java包前缀为org.apache下的Java class允许执行java断言。 同时限制org.apache.tools.ant前缀的Java包下的类不能执行断言,但是org.apache.tools.ant.Main这个Java类指定为允许执行断言。


2.Description Type:描述类型

对构建文件或target进行说明


3.PatternSet Type:定义模式集合(可在FileSet和DirSet中引用)

用以定义文件或目录集合


如果属性professional在构件文件中设定了,那么在PatternSet类型中将包含子目录prof下的所有java文件

文件名包含some-file的文件

4.DirSet Type:定义目录集合

定义一个目录集合,这个目录集合的根目录为${build.dir},在这个目录集合中将包含所有目录名为classes且名称中不包含有Test字符的子目录

在目录集合中通过PatternSet类型来指定目录集合


5.FileSet Type:定义文件集合

selector类型可看作是FileSet类型中的一个元素,用以对文件进行筛选 (1).contains selector

选择包含text属性中指定的字符串的文件

选择${doc.path}下所有包含script字符串的html文件 (2).date selector

选择文件的修改时间在某个特定的时间之前或之后的文件


选择${jar.path}下所有修改时间在01/01/2001 12:00 AM之前的文件 (3).depend selector

比较两个不同目录下名称相同的文件,然后选择文件修改时间迟的那个文件


选择相对于Ant1.4版本在Ant1.5版本中修改过的Java源文件 (4).depth selector

指定选择文件的文件目录的深度

选择根目录及根目录下的第一层子目录的所有文件 (5).different selector

从两个目录中选择被认为不同的文件 属性ignoreFileTimes默认为true,表示忽略文件修改时间


比较Ant工具1.4和1.5版本的Java源文件,从中选择不相同的文件,选择过程不忽略文件的修改时间 (6).filename selector 选择符合指定文件匹配模式的文件,通常为文件名匹配。这个selector的作用与PatternSet的include和exclude相似 negate="true"反效果,相当于exclude

选择${doc.path}下所有的css样式文件 (7).present selector

从FileSet的指定的目录中选择在present的targetdir指定的目录中不存在或者两个目录中都存在的文件 present="srconly"代表只从FileSet目录中选取targetdir指定目录中不存在的文件

present="both"代表从FileSet目录和targetdir目录中选择两个目录都存在的文件


从Ant1.5的src/main包中选择在ant1.4的src.main包中不存在的java源文件 (8).containsregexp selector

选择符合正则表达式的文件


从${doc.path}目录中选择文件名包含4、5或6后面跟着一个"."再跟着一个0-9的数字的txt文件 (9).size selector

通过文件的大小对文件进行选择




选择在${jar.path}目录下所有大于4096bytes的jar文件 (10).type selector 用于指定要选择目录还是文件 type="dir"选择目录 type="file"选择文件 选择${src}目录下的所有子目录 用FileSet类型内置的include,exclude属性来定义文件集合 可用selector类型实现相同的效果

这个文件集合包含根目录${server.src}下的所有java文件,但不包含文件名称中含有Test字符的文件。 用PatternSet Type类定义文件集合的实例

如果在构件文件中已定义了PatternSet类型,那么可以通过PatternSet的引用以实现相同的功能


6.FileList Type:定义文件列表

FileList可以包含不存在的文件,而FileSet类型指定的文件一定要存在

等同于

7.Filter Type:文件过滤器定义 定义一组文件过滤器,在移动或复制文件时对文件内容进行替换

begintoken属性定义一个特殊字符用于指定要过滤的字符串的开始位置,默认为@ endtoken属性定义一个特殊字符用于指定要过滤的字符串的结束位置,默认为@

在FilterSet类型中可以直接包含Filter类型,用以定义具体的文件过滤器

用于替换所有java文件中的版权信息和创建时间 自定义替换符的文件过滤器实例 等同于 当复制version.txt文件时替换%DATE!为当前日期 在FilterSet类型中可以直接包含FiltersFile类型,用以指定一个Java属性文件来替换 替换前src.txt的内容: This is the test sample. the message will be replaced:/#MESSAGE! abc.properties文件中的内容: MESSAGE=HELLO 构件文件的内容:

把src.txt文件复制到afterReplace目录下,同时使用abc.properties中的内容去替换/#MESSAGE!。

替换后在afterReplace目录下的src.txt文件的内容如下: This is the test sample.

the message will be replace:HELLO

8.PropertySet Type:定义属性集合 在PropertySet中可以通过Propertyref元素引用构件文件中的其他property,

而PropertySet类型之间可以互相引用。

定义一个属性集合,这个集合包含名字为lib1和bib2两个属性

定义一个属性集合,这个集合包含非foo、bar开头的属性

9.File Mapper Type:文件映射类型(定义文件间的相互关系) 用type属性指定实现类型,可实现的类型如下

(1).identity:指定源文件与目标文件具有相同的名称 (2).flatten:指定源文件与目标文件的名称相同,但忽略源文件中的文件目录,仅包含文件

(3).glob:源文件和目标文件的匹配模式中都包含/*的匹配符 (4).merge:用于把打包的源文件进行合并。目标文件名称与源文件相同

(5).regexp:用正则表达式匹配 (6).package:与glob相似,模式中包含/*的匹配符。package可用于替换目录名称

(7).composite:用于组合多个Mapper类型,每个Mapper类型都对源文件进行操作,最后返回所有操作后的结果 (8).chained:可包括多个Mapper类型,源文件依次经过每个Mapper,上一个Mapper的输出作为下一个Mapper的输入

(9).filtermapper:用于对文件名进行过滤 用法如

其中chained实现类不能用type属性指定。

10.ZipFileSet Type:zip格式的文件集 通过Ant工具内建的zip任务实现打包zip文件的功能,同时可以在zip任务中引用ZipFileSet类型指定文件

以zip文件的形式打包htdocs/manual目录下的所有文件到docs/user-guide目录下。

同时添加ChangeLog27.txt到这个zip文件的docs目录下。 在这个zip文件中同时包含example.zip文件,example.zip文件包含docs/examples目录及其子目录下的所有html文件。


11.FilterChains和FilterReaders:过滤链和过滤读取器

在Ant工具的内建任务:Concat、Copy、LoadFile、LoadProperties和Move中可以直接使用FilterChain进行过滤

  <param name="foo" value="bar"/> 
</filterreader> 

<filterreader classname="another.extension.of.java.io.FilterReader"> 
    <!-- 指定过滤器依赖的类库 --> 

    <classpath> 
      <pathelement path="${classpath}"/> 

    </classpath> 
  <param name="blah" value="blee"/> 

  <param type="abra" value="cadabra"/> 
</filterreader> 

</filter

_ javascript在ie和firefox下的一些差异

Posted on

javascript在ie和firefox下的一些差异

2007-07-31 @ 08:40:30 · 作者 Volcano

javascript在ie和firefox下,运行结果有一些差异。下面把最近碰到的情况做个记录,以后也会不断补充以备忘。

object操作

  • firefox:可支持

PLAIN TEXT CODE:

  1. var obj = { 'key' : 'aaa', }
  2. ie:不支持

PLAIN TEXT CODE:

  1. var obj = { 'key' : 'aaa', }

会报javascript错误,最后的","必须去掉

javascript对select元素的option操作

  1. firefox:可直接设置

PLAIN TEXT CODE:

  1. option.text = 'foooooooo';
  2. ie:只能设置

PLAIN TEXT CODE:

  1. option.innerHTML = 'fooooooo';

删除一个select的option

  1. firefox:可以

PLAIN TEXT CODE:

  1. select.options.remove(selectedIndex);
  2. ie7:可以用

PLAIN TEXT CODE:

  1. select.options[i] = null;
  2. ie6:需要写

PLAIN TEXT CODE:

  1. select.options[i].outerHTML = null;

真是万恶的浏览器。

作者: Volcano 发表于July 31, 2007 at 8:40 am

版权信息: 可以任意转载, 转载时请务必以超链接形式标明文章原始出处作者信息及此声明

永久链接 - http://www.ooso.net/archives/362

firefox ie 区别相关

Posted on

firefox ie 区别相关

lu_huanling

常见firefox不支持的JavaScript问题 2008-11-25 12:35 \aaa \要改为 \aaa \ 无法取得this对象,要用以下方法来取得。 function ChildNode(e)
{
var evt = e ? e : (window.event ? window.event : null); //此方法为了在firefox中的兼容
var node = evt.srcElement ? evt.srcElement : evt.target; //evt.target在火狐上才能识别用的。
selectNode = node.getAttribute("nodeId").toString();
}
nodeId属性不支持,要node.getAttribute("nodeId");
还有var+=elements[i].innerText在firefox中无识别,用elements[i].innerHTML来支持即可。


//这是一个访问下拉框的方法,注意ele.option();中的圆括号firefox不支持,只能用[];才行。 var ele = document.getElementById('bizName'); idv = ele.option[ele.selectedIndex].title;


//在火狐中的地址栏输入:about:config,会出现火狐的参数配置设置,


document.all在火狐中无法被识别,用document.getElementById,document.getElementByName等来替换即可。


//文件浏览的文本内容清理方法;unselectalbe:用于设置只读属性。on/off:两个值。 \ function checkpic(here) { var reg_pic=/\w+(.gif|.jpg){1}/; if(!reg_pic.test(here.value)) { alert(""); here.outerHTML += "";//用于清除浏览框中的内容,here.value="";是无法执行的。IE支持这个方法 here.value = ""; //IE不支持这个属性,firefor却支持。 //在赋值时要注意outerHTML+=,value用=。 return; } } //用来清除file中的内容; \ \ function addfile(){ document.all('file1').select(); document.selection.clear() }


//用来判断是IE或者FireFox //用来判断浏览器的类型。 function IsBrowser()
{ var isBrowser ; if(window.ActiveXObject){ isBrowser = "IE"; }else if(window.XMLHttpRequest){ isBrowser = "FireFox"; } return isBrowser; }
//在firefox中firstChild方法无效,用childNodes[]来代替。
var tableobj = document.getElementById('products'); var rvobj = document.getElementById('sto'); var delall = document.getElementById('delall'); if(IsIE == "IE") { tableobj.firstChild.removeChild(rvobj); tableobj.firstChild.removeChild(delall); } if(IsIE == "FireFox") { tableobj.childNodes[1].removeChild(rvobj); tableobj.childNodes[1].removeChild(delall); }
出现这firstChild无法读取问题


这样的话firefox中无tableobj.firstChild就读取为空。
要这样
在firefox中tableobj.firstChild就可以读取出来, 所以在firefox中空白的也算一个节点。(要特别注意) ----------------------------IE不兼容问题------------------------------------ 在程序中需要动态的创建一个复选框并在页面上显示,但是用document.getElementsByName()取的时候却取不到, 经测试,在firefox和opera中是完全能够取到的,看来又是ie的问题了 又试着创建了一个div,还是取不到,看来不光是表单元素有这个问题 解决方式:用document.getElementsByTagName


//会有打印的效果document.execCommand('print'),window.print();也有同样的效果。 window.print()会在FireFox中兼容,而 document.exeCommand('print');会在FireFox有不兼容问题。


//这种写法在firefox中不支持会有错误出现。
function document.onkeydown { var er = event.srcElement; if(event.keyCode == 13) document.getElementId('subform').click(); } //只能这样写 document.onkeydown = function() { var er = event.srcElement; if(event.keyCode == 13) document.getElementId('subform').click(); }


//eval的使用。IE中是可以用来取对象的一种方法,FireFox不支持这个。 \ function subEval() { //IE中可以用来取得对象 var whileEl = eval('submitText'); alert(whileEl.type); }


//all在IE中支持,火狐不支持的,用elements可以两个都支持。
function clearForm(input){ var form = input.form; if(form != null && form != undefined){
//var elements = form.all; IE支持。读取表单下的元素。
var elements = form.elements; for(var i=0;i<elements.length;i++){ with(elements[i]){ if(elements[i].type == undefined || name == input.name) continue; if(type == 'text'){ value = ''; }else if(type == 'radio'){ checked = false; }else if(type == 'select-one'){ selectedIndex = 0; } } } } this.checked = true; }


//火狐上的用调试的小问题。alert();的使用
alert();当里面没有参数时会在火狐中无法运行,IE可以。 alert('');有参数火狐才会执行,在火狐调试时要特别注意。


1)event
event.srcElement从字面上可以看出来有以下关键字:事件,源 他的意思就是:当前事件的源, 我们可以调用他的各种属性 就像:document.getElementById("")这样的功能, 经常有人问 firefox 下的 event.srcElement 怎么用,在此详细说明:
IE下,event对象有srcElement属性,但是没有target属性;Firefox下,event对象有target属性,但是没有srcElement属性.但他们的作用是相当的,即:
firefox 下的 event.target = IE 下的 event.srcElement 解决方法:使用obj(obj = event.srcElement ? event.srcElement : event.target;)来代替IE下的event.srcElement或者Firefox下的event.target. http://www.firefox.hk IE 中可以直接使用 event 对象,而 FF 中则不可以,解决方法之一如下: var theEvent = window.event || arguments.callee.caller.arguments[0]; 第二种是将 event 作为参数来传递: function xxx(e){var theEvent = window.event || e;} srcElement 和 target
在 IE 中 srcElement 表示产生事件的源,比如是哪个按钮触发的 onclick 事件,FF 中则是 target。
var theEvent = window.event || arguments.callee.caller.arguments[0]; var srcElement = theEvent.srcElement; if (!srcElement) { srcElement = theEvent.target; }
例子:
document.onclick = function(e){ var theEvent = window.event || e; var srcElement = theEvent.srcElement; if (!srcElement) { srcElement = theEvent.target; } }
function clickAction(){ var theEvent = window.event || arguments.callee.caller.arguments[0]; var srcElement = theEvent.srcElement; if (!srcElement) { srcElement = theEvent.target; } // do something; }
function clickAction(e){ var theEvent = window.event || e; var srcElement = theEvent.srcElement; if (!srcElement) { srcElement = theEvent.target; } // do something; } event.keyCode 和event.which FF不支持window.event.keyCode,代替着是event.which 列子: //在网页上面屏蔽tab键的代码 document.onkeydown = function (e){ var theEvent = window.event || e; var code = theEvent.keyCode || theEvent.which; if(code == 9){ return false; } }
http://hi.baidu.com/myweb2/blog/item/041fb9943e644e1cd21b70ad.html 2)document.all document.all是ie在dom标准确立之前的一个得到元素的一个集合,根据id和name,的一个元素大集合,后来DOM标准确定了, getElementById逐渐慢慢取代了all对象集的地位,但是firefox为了兼容一些为ie写的使用document.all的脚本,不得已,加入了document.all支持,但是也不支持if(document.all)判断,并且在有正确xhtml的doctype下会屏蔽使用 document.all 3)event window.event //IE e //FF e = window.event || e 3)判断页面加载完成 IE: document.onreadystatechange=function(){document.readyState=="complete"} FF: document.addEventListener("DOMContentLoaded",handle,false) 当某一事件被触发时需要执行某个函数,在IE下可用attachEvent,在FF下则要用addEventListener。 attachEvent()有两个参数,第一个是事件名称,第二个是需执行的函数; addEventListener()有三个参数,第一个是事件名称,但与IE事件不同的是,事件不带"on",比如"onsubmit"在这里应为"submit",第二个是需执行的函数,第三个参数为布尔值; 4)设置容器位置 left、top IE:可以不用加单位px FF:一定要加单位 px


//一种用来输入整数的方法。 IsInt:\ //是否整型 function isInt(e) { //keyCode:IE支持,which:FF支持。 var theEvent = window.event || e; var code = theEvent.keyCode || theEvent.which; if(code<48 || code>57) { //alert(code);//srcElement:IE支持,target:FF支持 var val = e.srcElement ? e.srcElement : e.target; val.value = val.value.substring(0,val.value.length-1); } }


// "||":也可以用来赋值,在FF中没有window.event,要对象赋对象。isInt(event); function isInt(e) { var oEvent = e || window.event; //用来判断是IE或者FF,并赋值给对象。 var oTarget = oEvent.target || oEvent.srcElement; //用来取IE或者FF的对象。http://hi.baidu.com/yuanxiaozi/blog/item/a3a6d235693dde1691ef39c8.html

发表于 @ 2008年12月05日 16:08:00 |