﻿<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/"><channel><title>BlogJava-飞龙在天-随笔分类-Others</title><link>http://www.blogjava.net/guanlong/category/953.html</link><description /><language>zh-cn</language><lastBuildDate>Sun, 18 Apr 2010 20:55:10 GMT</lastBuildDate><pubDate>Sun, 18 Apr 2010 20:55:10 GMT</pubDate><ttl>60</ttl><item><title>卓有成效的管理者——读书笔记</title><link>http://www.blogjava.net/guanlong/archive/2010/04/18/318695.html</link><dc:creator>Stephen</dc:creator><author>Stephen</author><pubDate>Sun, 18 Apr 2010 13:42:00 GMT</pubDate><guid>http://www.blogjava.net/guanlong/archive/2010/04/18/318695.html</guid><wfw:comment>http://www.blogjava.net/guanlong/comments/318695.html</wfw:comment><comments>http://www.blogjava.net/guanlong/archive/2010/04/18/318695.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/guanlong/comments/commentRss/318695.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/guanlong/services/trackbacks/318695.html</trackback:ping><description><![CDATA[&nbsp;
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <span style="font-family: 宋体">海尔总裁张瑞敏在序言中写到：&#8220;看德鲁克的书是一种享受，因为常常使人有茅塞顿开之感。&#8221;</span> <span style="font-family: 宋体">的确，德鲁克的书没有任何故弄玄虚，都是实实在在的道理，尤其是这本经典中的经典，每次读过以后都有不同的感受。</span></p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <span style="font-family: 宋体">管理是一门学问，如何让管理变得卓有成效的确是一个很大的问题。很多人从做具体的事情开始走向管理岗位的时候，都会觉得有点无所适从：有些人开始抱怨时间变得不可控，尤其是可能没有机会做一些曾经让自己很有&#8220;成就感&#8221;的工作；有些人不知道如何与下属和上级打交道，不知道怎样让团队变得有效率；有些人不知道如何做决策，每次做决策不是瞻前顾后，就是武断决策。《卓有成效的管理者》这本书，恰恰给了这些人最好的答案，最佳的实践经验，这本薄薄的书，没有大费周折的阐述什么讲大道理，没有长篇累牍的讲故事，只是把这种好像很明显但又往往让我们经常想不到的道理娓娓道来。其实卓有成效的管理很简单：管理好自己的时间、学会用人和让团队有成效、做好决策。</span></p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <span style="font-family: 宋体">一、管理好自己的时间</span></p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <span style="font-family: 宋体">作为一个卓有成效的管理者要会掌握自己的时间，要合理的利用自己的时间，时间用在能产生效益的事情上。管理者必须面对四个无法避免的难题：时间往往只属于别人，而不属于自己；管理者往往被迫忙于&#8220;日常运作&#8221;，除非他们敢于采取行动来改变周围的一切；本身处于一个组织中，受组织的局限。要成为有效管理者，首先，必须知道自己的时间用在什么地方上；其次，要学会将时间整块运用；再次，管理好自己的时间，消除浪费时间的活动，统一安排可以自由支配的时间。</span></p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <span style="font-family: 宋体">二、学会用人和让团队有效率</span></p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <span style="font-family: 宋体">管理者的作用不仅是自己如何可以高效率的工作，而更重要的是如何让团队有效的工作，因为一个人再优秀也只是一个人，而一个优秀的团队的作用更是远远大于把这些人的单产累加起来，这就是为什么很多人说</span>1+1&gt;2<span style="font-family: 宋体">的道理。从德鲁克的书中，我们明白了，让团队有效率其实很简单，就是正确的用人并发挥他们长处，然后学会自己可为团队做些什么。</span></p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <span style="font-family: 宋体">汉高祖刘邦说：&#8220;夫运筹帷帐之中，决胜千里之外，吾不如子房（即张良）。镇国家，抚百姓，给馈饷，不绝粮道，吾不如萧何。连百万之军，战必胜，攻必取，吾不如韩信。此三者，皆人杰也，吾能用之，此吾所以取天下也。&#8221;有效的管理者在用人时，不在于如何克服人的短处，而在于如何发挥人的长处。</span></p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <span style="font-family: 宋体">同时，作为一个有成效的管理者要知道自己能做些什么贡献，并且要知道能为下属做些什么贡献，才能让这些知识工作者有效的工作。重视贡献，才能使管理者的注意力不为自己的专长所限，不为其本身的技术所限，不为其本身所在的部门所限，才能看到整体的绩效，同时，也能使其更加重视团队，只有团队才是真正产生成果的地方。</span></p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <span style="font-family: 宋体">三、做好决策</span></p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <span style="font-family: 宋体">决策是非常具有风险的举动，但是如何一个管理人都需要做出各种决策，你的决策可能会影响到公司的利益和伙伴的利益、绩效及成果，这就是管理者存在的最重要的一项功能。</span></p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <span style="font-family: 宋体">卓有成效的管理者必须善于做出正确的决策，要做出决策就要有明确目标、权衡现有资源、反复推敲，反复的斟酌、落实行动、实时反馈，衡量你的决策是否正确，给你的决策留更多的调整空间和机会。</span></p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <span style="font-family: 宋体">在做决策之前要善于听取各方意见，善于使用发散性思维和收敛性思维来搜集听取各方信息；要进行大量的风险评估如果收益大于支出那么就立即执行；一旦执行就要顶住压力，处理好时间问题、处理好人际问题；重视反馈学会听取各方意见挤反馈的信息，信息中有好有坏要通盘分析，验证决策的正确性。</span></p>
<img src ="http://www.blogjava.net/guanlong/aggbug/318695.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/guanlong/" target="_blank">Stephen</a> 2010-04-18 21:42 <a href="http://www.blogjava.net/guanlong/archive/2010/04/18/318695.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>Office 2007 与 outlook 2003</title><link>http://www.blogjava.net/guanlong/archive/2009/04/13/265388.html</link><dc:creator>Stephen</dc:creator><author>Stephen</author><pubDate>Mon, 13 Apr 2009 14:54:00 GMT</pubDate><guid>http://www.blogjava.net/guanlong/archive/2009/04/13/265388.html</guid><wfw:comment>http://www.blogjava.net/guanlong/comments/265388.html</wfw:comment><comments>http://www.blogjava.net/guanlong/archive/2009/04/13/265388.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/guanlong/comments/commentRss/265388.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/guanlong/services/trackbacks/265388.html</trackback:ping><description><![CDATA[最近同事推荐office 2007比较好用，于是装了一个，<br />
但是在用outlook时比较麻烦，我其中的一个邮箱没办法收pop3的邮件，总提示密码错误，要求输入密码，<br />
但是我用2003的时候是可以的，<br />
于是我在尝试各种组合，发现outlook 2003 、foxmail，都可以从这个pop3收到邮件，<br />
但是outlook 2007就是不可以，<br />
于是尝试用office 2007+outlook2003来用，<br />
结果出现的新的问题，outlook不能使用word作为邮件编辑器了，<br />
<br />
经过尝试：<br />
1、office 2003 与office 2007 不能在同系统共存；<br />
2、outlook 2003 与 outlook 2007 也是同样；<br />
3、office 2007 与&nbsp;outlook 2003可以共存，但是问题是outlook2003只能使用word2003作为编辑器，而不能使用2007的；<br />
<br />
麻烦呢，目前我暂时用的第三种方案，<br />
关于不能收邮件的原因，目前估计是端口的问题，因为公司的网络环境比较严格，需要申请开通端口，<br />
估计是2007验证时使用了什么不知道的端口，等有时间再网络工程师调试一下。
<img src ="http://www.blogjava.net/guanlong/aggbug/265388.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/guanlong/" target="_blank">Stephen</a> 2009-04-13 22:54 <a href="http://www.blogjava.net/guanlong/archive/2009/04/13/265388.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>成功清除Safeabc.exe的病毒</title><link>http://www.blogjava.net/guanlong/archive/2008/06/24/210404.html</link><dc:creator>Stephen</dc:creator><author>Stephen</author><pubDate>Tue, 24 Jun 2008 14:10:00 GMT</pubDate><guid>http://www.blogjava.net/guanlong/archive/2008/06/24/210404.html</guid><wfw:comment>http://www.blogjava.net/guanlong/comments/210404.html</wfw:comment><comments>http://www.blogjava.net/guanlong/archive/2008/06/24/210404.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/guanlong/comments/commentRss/210404.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/guanlong/services/trackbacks/210404.html</trackback:ping><description><![CDATA[<br />
&nbsp;&nbsp;&nbsp; 偶用金山毒霸的杀毒套装，今天无意中发现金山网镖中有一个访问网络的请求是C:\System32\Safeabc.exe请求的，这个文件根本不是我安装的，又不认识，豪不犹豫的禁止了，上网一查，果然是病毒，而且现在并没有杀毒工具可以查杀这个病毒，而且任务管理器也无法使用了，无论是按ctrl+shift+del还是还是在任务栏点右键，还是运行&#8220;taskmgr&#8221;都没有办法掉出任务管理器，麻烦来了。<br />
<br />
&nbsp;&nbsp;&nbsp; 上网查相关资料，这个病毒好像还会自动下载木马病毒，很危险的说，好在金山毒霸还能用，查了一下，内存里有三个木马，先杀掉。<br />
<br />
&nbsp;&nbsp;&nbsp; 金山毒霸安全百宝箱里有一个进程管理器，居然还能调用，运行发现果然有一个safeabc.exe的进程，先结束掉这个进程，然后去删除这个文件，系统提示禁止删除，找到金山毒霸的文件粉碎器，强行删除，然后将启动项里面可疑的启动项删掉，好像是叫loveHebeAA的，然后查毒杀毒，<br />
重启，病毒是没有了，但是任务管理器还是不能用，郁闷了，上网找了好多资料，试了都不行，后来病急乱投医，在金山的修复工具里检测一下，居然发现好多的劫持，如图：<br />
<img src="http://www.blogjava.net/images/blogjava_net/guanlong/images/safe.JPG" alt="" border="0" /><br />
<br />
TNND，修复之，任务管理器就可以用了，<br />
<br />
阿门，应该是解决了，不知道这病毒还有没有其他的影响。。。<br />
<br />
P.S. 此文不是给金山打广告，别的工具应该也可以做到的，比如进程管理器，文件粉碎器，劫持修复等等，很多工具都可以做到，只是本人手头上恰好有金山而已，:P<br />
<br />
<img src ="http://www.blogjava.net/guanlong/aggbug/210404.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/guanlong/" target="_blank">Stephen</a> 2008-06-24 22:10 <a href="http://www.blogjava.net/guanlong/archive/2008/06/24/210404.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>备忘代码</title><link>http://www.blogjava.net/guanlong/archive/2006/02/16/31113.html</link><dc:creator>Stephen</dc:creator><author>Stephen</author><pubDate>Thu, 16 Feb 2006 15:47:00 GMT</pubDate><guid>http://www.blogjava.net/guanlong/archive/2006/02/16/31113.html</guid><wfw:comment>http://www.blogjava.net/guanlong/comments/31113.html</wfw:comment><comments>http://www.blogjava.net/guanlong/archive/2006/02/16/31113.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/guanlong/comments/commentRss/31113.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/guanlong/services/trackbacks/31113.html</trackback:ping><description><![CDATA[<STRONG>1、无提示关闭窗口<BR></STRONG>&lt;input type="button" onClick="window.opener = '';window.close();" value="IE6最简单的无提示关闭窗口" &gt;<BR><BR><B>2、防止被人iframe</B><BR>if (top.location != self.location)<BR>{<BR>&nbsp;&nbsp;top.location.href="<A title=http://www.34do.net href="http://www.34do.net/" target=_blank>http://www.34do.net</A>";<BR>}<BR><BR><B>3、判断一个对象存在不存在</B><BR>document.all("a")==null（不存在）<BR><BR><B>4、弹出子窗口</B><BR>window.open ('default.asp', 'newwindow', 'height=100, width=400, top=0, left=0, toolbar=no, menubar=no, scrollbars=no, resizable=no,location=no, status=no') <BR><BR><B>5、打开模态窗口</B><BR>window.showModalDialog('default.asp',window,'help: No; resizable: No; status: No;scrollbars:No;center: Yes;dialogWidth:width;dialogHeight:height;')<BR><BR><B>6、弹出的子窗口刷新父窗口</B><BR>window.parent.location.reload();<BR><BR><B>7、模态窗口刷新父窗口</B><BR>window.parent.dialogArguments.document.execCommand('Refresh');<BR><BR><B>8、一个js文件包含另外一个js文件</B><BR>document.write('&lt;script src="/b_trade/public/new/public.js"&gt;&lt;\/script&gt;');<BR><BR><B>9、让文字竖着写</B><BR>&lt;td style="Writing-mode:tb-rl;"&gt;佛罗伦&lt;/td&gt;<BR><BR><B>10、iframe引用自己</B><BR>window.parent.document.getElementById("iframe_dg")<BR>这样在iframe文件里就可以操作它自己，比如：window.parent.document.getElementById("iframe_dg").height=200<BR><BR><B>11、根据内容自动调整IFrame高度</B> <BR>function autoSetIframeSize()<BR>{<BR>&nbsp;&nbsp;var obj=self.parent.parent.document.all[self.name];<BR>&nbsp;&nbsp;if(obj!=null)<BR>&nbsp;&nbsp;{<BR>&nbsp;&nbsp;&nbsp;&nbsp;self.parent.parent.document.all[self.name].style.pixelHeight=self.document.body.scrollHeight+5;<BR>&nbsp;&nbsp;}<BR>}<BR>必须定义iframe的name属性<BR>&lt;iframe id="iframe1" name="iframe1" align="middle" frameborder="0" width="100%" height="250" scrolling="no" src="a.asp"&gt;&lt;/iframe&gt;<BR>将a.asp的&lt;body&gt;修改为：<BR>&lt;body onload="autoSetIframeSize()"&gt;<BR><BR><B>12、为单元格添加渐变色效果（ie支持，firefox不支持）</B><BR>.bg3 <BR>{<BR>&nbsp;&nbsp;FILTER: progid:DXImageTransform.Microsoft.Gradient(GradientType=1, StartColorStr=#842B00, EndColorStr=#FFFFFF); <BR>}<BR>效果如图<BR>
<DIV style="OVERFLOW-X: auto; WIDTH: 100%"><A href="http://www.34do.net/blog/uploads/200512/31_140839_color.gif" target=_blank><IMG alt=uploads/200512/31_140839_color.gif src="http://www.34do.net/blog/uploads/200512/31_140839_color.gif"></A></DIV><BR><BR><B>13、定时执行任务</B><BR>规定一项任务在一定时间内执行：delayID=setTimeout(vCode, iMilliSeconds)，在需要的时候，可以强制停止该任务：clearTimeout(delayID)<BR><BR><B>14、自动选中复制</B><BR>&lt;span onmouseover="var obj=document.body.createTextRange();obj.moveToElementText(this);obj.select();obj.execCommand('Copy')" onclick="var obj=document.body.createTextRange();obj.moveToElementText(this);obj.select();obj.execCommand('Copy')" &gt;选中我并复制我&lt;/span&gt;<BR><BR><B>15、产生随机数</B><BR>VB的Rnd函数产生的随机数范围为0-1。假如要从(min,max)这个范围内随机抽取一个数，具体公式如下： 随机数 = (max - min) * Rnd() + min，min和max可以是任意整数，只是min&lt;max。<BR><BR><B>16、限制文本框只能输入正整数 </B><BR>&lt;input onKeyUp="this.value=this.value.replace(/[^\d]/g,'')"&gt; <!--...<br /><br /><a href="article.asp?id=139"><b>阅读全文...</b></a>--><img src ="http://www.blogjava.net/guanlong/aggbug/31113.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/guanlong/" target="_blank">Stephen</a> 2006-02-16 23:47 <a href="http://www.blogjava.net/guanlong/archive/2006/02/16/31113.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>Eclipse 整合 Resin</title><link>http://www.blogjava.net/guanlong/archive/2005/12/27/25622.html</link><dc:creator>Stephen</dc:creator><author>Stephen</author><pubDate>Tue, 27 Dec 2005 12:28:00 GMT</pubDate><guid>http://www.blogjava.net/guanlong/archive/2005/12/27/25622.html</guid><wfw:comment>http://www.blogjava.net/guanlong/comments/25622.html</wfw:comment><comments>http://www.blogjava.net/guanlong/archive/2005/12/27/25622.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/guanlong/comments/commentRss/25622.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/guanlong/services/trackbacks/25622.html</trackback:ping><description><![CDATA[<P>1、安装Eclipse；<BR><BR>2、安装Resin；<BR><BR>3、安装插件：<BR>插件下载网站为：<BR><A href="http://www.improve-technologies.com/alpha/resin/">http://www.improve-technologies.com/alpha/resin/</A><BR>该网站提供了3.0以上版本的Resin插件，可按照提示自由下载安装。<BR>由于3.0以上版本提供软件升级功能，所以可以点击" Using the update manager"查看升级安装方式，<BR><BR>升级时安装URL为：<A href="http://www.improve-technologies.com/alpha/updates/site.xml">http://www.improve-technologies.com/alpha/updates/site.xml</A><BR>Help=&gt;Software update<BR>升级成功后，重启Eclipse<BR><BR>4、配置插件：<BR>点击Window =&gt; Preferences =&gt; Resin<BR>设置Home directory(Resin的目录)<BR>设置java compiler (javac文件位置)</P>
<P>新建Java－&gt;Java Resin project<BR>新建测试Jsp<BR>Run As 里面新建resin <BR>添如Resin配置文件路径</P>
<P>运行，如果正常可显示测试Jsp内容<BR>我安装的时候提示找不到类，把tools.jar添加到项目里就可以了</P>
<P>可查看网站提供帮助文件<BR><A href="http://www.improve-technologies.com/alpha/resin/readme.txt">http://www.improve-technologies.com/alpha/resin/readme.txt</A></P><img src ="http://www.blogjava.net/guanlong/aggbug/25622.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/guanlong/" target="_blank">Stephen</a> 2005-12-27 20:28 <a href="http://www.blogjava.net/guanlong/archive/2005/12/27/25622.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>转csdn上一网友帖子</title><link>http://www.blogjava.net/guanlong/archive/2005/11/25/21406.html</link><dc:creator>Stephen</dc:creator><author>Stephen</author><pubDate>Fri, 25 Nov 2005 03:46:00 GMT</pubDate><guid>http://www.blogjava.net/guanlong/archive/2005/11/25/21406.html</guid><wfw:comment>http://www.blogjava.net/guanlong/comments/21406.html</wfw:comment><comments>http://www.blogjava.net/guanlong/archive/2005/11/25/21406.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/guanlong/comments/commentRss/21406.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/guanlong/services/trackbacks/21406.html</trackback:ping><description><![CDATA[<P>关于创业，因为我已经得到高人的指点了。 <BR>现在我就把这高人告诉我的，告诉大家！ <BR>我是在央视论坛上认识他的，网名叫“修补” <BR>别的就不多说了，进入话题吧。 <BR>我问他：先生！我想创业，想要拥有自己一片天地！ <BR>他说：好样的，我喜欢你这样，你认为你需要什么？ <BR>我说：可能需要钱，需要技术，销售经验，等！~ <BR>他说：我看，如果你是搞投资的话你确实要有这些，但是如果你创业， <BR>你又是一个年青人，我看你，最好是白手起家！ <BR>我问？：怎么叫白手起家？ <BR>他说：就是不用钱，不用技术，只靠你自己去磨自己，慢慢打磨自己直 <BR>到成功。 </P>
<P>我很迷糊：先生我很抱歉我想我不懂您说的！ <BR>他说：我的意思是，把你自己当产品，你可以在没有实物的时候，出卖 <BR>你自己的劳动，你可以为别人服务，这是开始，当你有了一些资金，就 <BR>请挖掘你的爱心。用你的爱心去发现别人的需要。就像你，如果你上网久 了，想不想喝口水？但是你却要用无情去赚他的钱，当然，前题是，你要 小本经营。你就靠这个公式运行下去，十年后，如果你还没有成功再找我 很久一段时间，我真的的不是很明白他的意思。 <BR>直到有天晚上，我想了很久，明白了！！！！，创业，就是要一步步来， 就算你一点什么本钱也没有，但是只要你还活着，你就有机会，而且机 会就在你身边。你所要做的，就是去做，而且根本不要考虑些什么。除 非你是在研究技术！我想，大家和我一样，当初我问先生问得最多的一个问题是：什么项目赚？目前我没钱做什么？这样的问题对于想要创业的人来说，是没有意义的。真正的意义是，你现在就去做，去看别人的需求，只要别人需要，你就去满足他，就这样简单！至于钱，经验，伙伴等等的一切，都会有，只要你去做！想得再多，只会让你越来越怕创业。 </P>
<P>说到这里，可能有人要问我了：你做了吗？ <BR>说实在的，我做了，而且的确是那样，做过后我很有成就感！~！！比想的要好得多，先生很高兴。但是我现在没有做了，原因是因为私人的原因。 <BR>生活吧，这是个人选择生活的方式！~我曾说过，创业是一种活法。呵呵 <BR>快完了，我搞不清我写了些什么。但是我最后要感谢的是修补先生。 <BR>他直接告诉我的是，他希望我能成功，再告诉下一个人成功，再让下一位告诉下一位成功。他希望将成功传递下去。我很有感于他的这份情操！ <BR>中国再多这样几个人，我想，中国会腾飞得更快。在这里，我祝您快乐 <BR>一生。谢谢您的教导！呵呵，大概是这样的吧。有点词不达意！事实上我和先生聊过近半个月！ <BR>希望给想创业的人一点光亮！一点灵感！ </P>
<P>修补先生是一位哲人， <BR>他把一个大道理简单地浓缩到三言两语之中。 <BR>他讲的创业， <BR>首先是去做，想多了没用，那是乌托邦。 <BR>通过行动来积累经验，积累资金，积累天时地利与人和，积累创业的一块块基石。 <BR>然后还是要去做，通过行动积累自已的宝贵财富： <BR>勇气与毅力，知识与经验，发现的能力与进取的决心， <BR>敏锐的判断力与果决的决策能力， <BR>说到最后，你还是要去做， <BR>你说没有钱，你说没有技术，你说没有经验 <BR>这不是创业应当谈的条件， <BR>这些都有就不叫创业， <BR>应当叫投资或守业----同样离不开我们不停的去行动啊！ <BR>创业以人为本， <BR>不停地把自已打磨成什么样的人， <BR>有一天就能成就相应的大业。 <BR>千金尚可散尽， <BR>技术也不一定常新， <BR>经验更可能是老生常谈。 <BR>只有不停地行动， <BR>不停地吸取新知， <BR>不停地跟上时代的步伐， <BR>才能成就你我的千秋大业！<BR></P><img src ="http://www.blogjava.net/guanlong/aggbug/21406.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/guanlong/" target="_blank">Stephen</a> 2005-11-25 11:46 <a href="http://www.blogjava.net/guanlong/archive/2005/11/25/21406.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>Javascript根据图片自动设置窗口大小</title><link>http://www.blogjava.net/guanlong/archive/2005/09/15/13090.html</link><dc:creator>Stephen</dc:creator><author>Stephen</author><pubDate>Thu, 15 Sep 2005 08:02:00 GMT</pubDate><guid>http://www.blogjava.net/guanlong/archive/2005/09/15/13090.html</guid><wfw:comment>http://www.blogjava.net/guanlong/comments/13090.html</wfw:comment><comments>http://www.blogjava.net/guanlong/archive/2005/09/15/13090.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/guanlong/comments/commentRss/13090.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/guanlong/services/trackbacks/13090.html</trackback:ping><description><![CDATA[今天发现一个好玩的DD，<BR>可以根据图片的大小设置弹出窗口的大小，其实很简单的几段代码<BR><BR>&lt;script language="JavaScript"&gt;<BR>self.moveTo(2,2);<BR>function fsz(){<BR>&nbsp;&nbsp;&nbsp; self.resizeTo((document.pic.width*1.02+50),200+document.pic.height);<BR>&nbsp;&nbsp;&nbsp; window.focus();<BR>}<BR>&lt;/script&gt;<BR><BR>&lt;img src="images/tcnewspic.jpg" name="pic" onload="javascript: fsz();"&gt;<BR><BR>img里定义名字后，把窗口大小定义成图片的大小再增加一些就可以了<BR><BR>用此方法也可以写出一些有意思的东东<img src ="http://www.blogjava.net/guanlong/aggbug/13090.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/guanlong/" target="_blank">Stephen</a> 2005-09-15 16:02 <a href="http://www.blogjava.net/guanlong/archive/2005/09/15/13090.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>浏览器滚动条的参数总结[ZT]</title><link>http://www.blogjava.net/guanlong/archive/2005/09/08/12393.html</link><dc:creator>Stephen</dc:creator><author>Stephen</author><pubDate>Thu, 08 Sep 2005 01:27:00 GMT</pubDate><guid>http://www.blogjava.net/guanlong/archive/2005/09/08/12393.html</guid><wfw:comment>http://www.blogjava.net/guanlong/comments/12393.html</wfw:comment><comments>http://www.blogjava.net/guanlong/archive/2005/09/08/12393.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/guanlong/comments/commentRss/12393.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/guanlong/services/trackbacks/12393.html</trackback:ping><description><![CDATA[1．overflow内容溢出时的设置（设定被设定对象是否显示滚动条）<BR>overflow-x水平方向内容溢出时的设置<BR>overflow-y垂直方向内容溢出时的设置<BR>以上三个属性设置的值为visible(默认值)、scroll、hidden、auto。<BR><BR>2．scrollbar-3d-light-color立体滚动条亮边的颜色（设置滚动条的颜色）<BR>scrollbar-arrow-color上下按钮上三角箭头的颜色<BR>scrollbar-base-color滚动条的基本颜色<BR>scrollbar-dark-shadow-color立体滚动条强阴影的颜色<BR>scrollbar-face-color立体滚动条凸出部分的颜色<BR>scrollbar-highlight-color滚动条空白部分的颜色<BR>scrollbar-shadow-color立体滚动条阴影的颜色<BR><BR>我们通过几个实例来讲解上述的样式属性：<BR>1.让浏览器窗口永远都不出现滚动条<BR>没有水平滚动条<BR>&lt;body&nbsp;style="overflow-x:hidden"&gt;<BR>没有垂直滚动条<BR>&lt;body&nbsp;style="overflow-y:hidden"&gt;<BR>没有滚动条<BR>&lt;body&nbsp;style="overflow-x:hidden;overflow-y:hidden"&gt;或&lt;body&nbsp;<BR>style="overflow:hidden"&gt;<BR><BR>2.设定多行文本框的滚动条<BR><BR>没有水平滚动条<BR>&lt;textarea&nbsp;style="overflow-x:hidden"&gt;&lt;/textarea&gt;<BR><BR>没有垂直滚动条<BR>&lt;textarea&nbsp;style="overflow-y:hidden"&gt;&lt;/textarea&gt;<BR><BR>没有滚动条<BR>&lt;textarea&nbsp;style="overflow-x:hidden;overflow-y:hidden"&gt;&lt;/textarea&gt;<BR>或&lt;textarea&nbsp;style="overflow:hidden"&gt;&lt;/textarea&gt;<BR><BR>3.设定窗口滚动条的颜色<BR>设置窗口滚动条的颜色为红色&lt;body&nbsp;style="scrollbar-base-color:red"&gt;<BR>scrollbar-base-color设定的是基本色，一般情况下只需要设置这一个属性就可以达到改变滚动条颜色的目的。<BR>加上一点特别的效果：<BR>&lt;body&nbsp;style="scrollbar-arrow-color:yellow;scrollbar-base-color:lightsalmon"&gt;<BR><BR>4.在样式表文件中定义好一个类，调用样式表。<BR>&lt;style&gt;<BR>.coolscrollbar{scrollbar-arrow-color:yellow;scrollbar-base-color:lightsalmon;}<BR>&lt;/style&gt;<BR>这样调用：<BR>&lt;textarea&nbsp;class="coolscrollbar"&gt;&lt;/textarea&gt;<BR><img src ="http://www.blogjava.net/guanlong/aggbug/12393.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/guanlong/" target="_blank">Stephen</a> 2005-09-08 09:27 <a href="http://www.blogjava.net/guanlong/archive/2005/09/08/12393.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>社会生活中的十二条著名法则（精典）</title><link>http://www.blogjava.net/guanlong/archive/2005/05/26/5225.html</link><dc:creator>Stephen</dc:creator><author>Stephen</author><pubDate>Thu, 26 May 2005 05:07:00 GMT</pubDate><guid>http://www.blogjava.net/guanlong/archive/2005/05/26/5225.html</guid><wfw:comment>http://www.blogjava.net/guanlong/comments/5225.html</wfw:comment><comments>http://www.blogjava.net/guanlong/archive/2005/05/26/5225.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/guanlong/comments/commentRss/5225.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/guanlong/services/trackbacks/5225.html</trackback:ping><description><![CDATA[一、马太效应<BR><BR>&nbsp; &nbsp;《新约 马太福音》中有这样一个故事，一个国王远行前，交给三个仆人每人一锭银子，吩咐他们：“你们去做生意，等我回来时，再来见我。”国王回来时，第一个仆人说：“主人，你交给我们的一锭银子，我已赚了10锭。”于是国王奖励他10座城邑。第二个仆人报告说：“主人，你给我的一锭银子，我已赚了5锭。”于是国王例奖励了他5座城邑。第三个仆人报告说：“主人，你给我的一锭银子，我一直包在手巾里存着，我怕丢失，一直没有拿出来。”于是国王命令将第三个仆人的一锭银子也赏给第一个仆人，并且说：“凡是少的，就连他所有的也要夺过来。凡是多的，还要给他，叫他多多益善。”这就是马太效应。看看我们周围，就可以发现许多马太效应的例子。朋友多的人会借助频繁的交往得到更多的朋友；缺少朋友的人会一直孤独下去。金钱方面更是如此，即使投资回报率相同，一个比别人投资多10倍的人，收益也多10倍。<BR><BR>&nbsp; &nbsp;这是个赢家通吃的社会，善用马太效应，赢家就是你。<BR>　　<BR>　　对企业经营发展而言，马太效应则告诉我们，要想在某一个领域保持优势，就必须在此领域迅速做大。当你成为某个领域的领头羊的时候，即使投资回报率相同，你也能更轻易的获得比弱小的同行更大的收益。而若没有实力迅速在某个领域做大，就要不停地寻找新的发展领域，才能保证获得较好的回报。<BR><BR>　　二、手表定理<BR><BR>&nbsp; &nbsp;手表定理是指一个人有一只表时，可以知道现在是几点钟，而当他同时拥有两只表时却无法确定。两只表并不能告诉一个人更准确的时间，反而会让看表的人失去对准确时间的信心。你要做的就是选择其中较信赖的一只，尽力校准它，并以此作为你的标准，听从它的指引行事。记住尼采的话：“兄弟，如果你是幸运的，你只需有一种道德而不要贪多，这样，你过桥更容易些。”<BR><BR>&nbsp; &nbsp;如果每个人都“选择你所爱，爱你所选择”，无论成败都可以心安理得。然而，困扰很多人的是：他们被“两只表”弄得无所，心身交瘁，不知自己该信仰哪一个，还有人在环境、他人的压力下，违心选择了自己并不喜欢的道路，为此而郁郁终生，即使取得了受人瞩目的成就，也体会不到成功的快乐。<BR>　　 <BR>　　手表定理在企业经营管理方面给我们一种非常直观的启发，就是对同一个人或同一个组织的管理不能同时采用两种不同的方法，不能同时设置两个不同的目标。甚至每一个人不能由两个人来同时指挥，否则将使这个企业或这个人无所适从。手表定理所指的另一层含义在于每个人都不能同时挑选两种不同的价值观，否则，你的行为将陷于混乱。<BR><BR>　　三、不值得定律<BR><BR>&nbsp; &nbsp;不值得定律最直观的表述是：不值得做的事情，就不值得做好，这个定律似乎再简单不过了，但它的重要性却时时被人们疏忘。不值得定律反映出人们的一种心理，一个人如果从事的是一份自认为不值得做的事情，往往会保持冷嘲热讽，敷衍了事的态度。不仅成功率小，而且即使成功，也不会觉得有多大的成就感。<BR>　　哪些事值得做呢？一般而言，这取决于三个因素。<BR>　　1、价值观。关于价值观我们已经谈了很多，只有符合我们价值观的事，我们才会满怀热情去做。<BR>　　2、个性和气质。一个人如果做一份与他的个性气质完全背离的工作，他是很难做好的，如一个好交往的人成了档案员，或一个害羞者不得不每天和不同的人打交道。<BR>　　3、现实的处境。同样一份工作，在不同的处境下去做，给我们的感受也是不同的。例如，在一家大公司，如果你最初做的是打杂跑腿的工作，你很可能认为是不值得的，可是，一旦你被提升为领班或部门经理，你就不会这样认为了。<BR>　　<BR>　　总结一下，值得做的工作是：符合我们的价值观，适合我们的个性与气质，并能让我们看到期望。如果你的工作不具备这三个因素，你就要考虑换一个更合适的工作，并努力做好它。<BR>　　<BR>　　因此，对个人来说，应在多种可供选择的奋斗目标及价值观中挑选一种，然后为之而奋斗。“选择你所爱的，爱你所选择的”，才可能激发我们的奋斗毅力，也才可以心安理得。而对一个企业或组织来说，则要很好地分析员工的性格特性，合理分配工作，如让成就欲较强的职工单独或牵头来完成具有一定风险和难度的工作，并在其完成时给予定时的肯定和赞扬；让依附欲较强的职工更多地参加到某个团体中共同工作；让权力欲较强的职工担任一个与之能力相适应的主管。同时要加强员工对企业目标的认同感，让员工感觉到自己所做的工作是值得的，这样才能激发职工的热情。<BR><BR>　　四、彼得原理<BR><BR>&nbsp; &nbsp;彼得原理是美国学者劳伦斯?彼得在对组织中人员晋升的相关现象研究后得出的一个结论；在各种组织中，由于习惯于对在某个等级上称职的人员进行晋升提拔，因而雇员总是趋向于晋升到其不称职的地位。彼得原理有时也被称为“向上爬”原理。这种现象在现实生活中无处不在：一名称职的教授被提升为大学校长后无法胜任；一个优秀的运动员被提升为主管体育的官员，而无所作为。<BR><BR>　　对一个组织而言，一旦组织中的相当部分人员被推到了其不称职的级别，就会造成组织的人浮于事，效率低下，导致平庸者出人头地，发展停滞。因此，这就要求改变单纯的“根据贡献决定晋升”的企业员工晋升机制，不能因某个人在某一个岗位级别上干得很出色，就推断此人一定能够胜任更高一级的职务。要建立科学、合理的人员选聘机制，客观评价每一位职工的能力和水平，将职工安排到其可以胜任的岗位。不要把岗位晋升当成对职工的主要奖励方式，应建立更有效的奖励机制，更多地以加薪、休假等方式作为奖励手段。有时将一名职工晋升到一个其无法很好发挥才能的岗位，不仅不是对职工的奖励，反而使职工无法很好发挥才能，也给企业带来损失。<BR><BR>　　对个人而言，虽然我们每个人都期待着不停地升职，但不要将往上爬作为自己的惟一动力。与其在一个无法完全胜任的岗位勉力支撑、无所适从，还不如找一个自己能游刃有余的岗位好好发挥自己的专长。<BR><BR>　　五、零和游戏原理<BR><BR>&nbsp; &nbsp;当你看到两位对弈者时，你就可以说他们正在玩“零和游戏”。因为在大多数情况下，总会有一个赢，一个输，如果我们把获胜计算为得1分，而输棋为-1分，那么，这两人得分之和就是：1+（-1）=0。<BR><BR>　　这正是“零和游戏”的基本内容：游戏者有输有赢，一方所赢正是另一方所输，游戏的总成绩永远是零。<BR><BR>　　零和游戏原理之所以广受关注，主要是因为人们发现在社会的方方面面都能发现与“零和游戏”类似的局面，胜利者的光荣后面往往隐藏着失败者的辛酸和苦涩。从个人到国家，从政治到经济，似乎无不验证了世界正是一个巨大的“零和游戏”场。这种理论认为，世界是一个封闭的系统，财富、资源、机遇都是有限的，个别人、个别地区和个别国家财富的增加必然意味着对其他人、其他地区和国家的掠夺，这是一个“邪恶进化论”式的弱肉强食的世界。<BR><BR>　　但20世纪人类在经历了两次世界大战，经济的高速增长、科技进步、全球化以及日益严重的环境污染之后，“零和游戏”观念正逐渐被“双赢”观念所取代。人们开始认识到“利己”不一定要建立在“损人”的基础上。通过有效合作，皆大欢喜的结局是可能出现的。但从“零和游戏”走向“双赢”，要求各方要有真诚合作的精神和勇气，在合作中不要耍小聪明，不要总想占别人的小便宜，要遵守游戏规则，否则“双赢”的局面就不可能出现，最终吃亏的还是自己。<BR><BR>　　六、华盛顿合作规律。<BR><BR>&nbsp; &nbsp;华盛顿合作规律说的是：一个人敷衍了事，两个人互相推诿，三个人则永无成事之日。多少有点类似于我们“三个和尚”的故事。人与人的合作不是人力的简单相加，而是要复杂和微妙得多。在人与人的合作中，假定每个人的能力都为1，那么10个人的合作结果就有时比10大得多，有时甚至比1还要小。因为人不是静止的动物，而更像方向各异的能量，相推动时自然事半功倍，相互抵触时则一事无成。我们传统的管理理论中，对合作研究得并不多，最直观的反映就是，目前的大多数管理制度和行业都是致力于减少人力的无谓消耗，而非利用组织提高人的效能。换言之，不妨说管理的主要目的不是让每个人做到最好，而是避免内耗过多。21世纪将是一个合作的时代，值得庆幸的是，越来越多的人已经认识到真诚合作的重要性，正在努力学习合作。<BR><BR>　　邦尼人力定律：一个人一分钟可以挖一个洞，六十个人一秒种却挖不了一个洞。<BR>　　<BR>　　合作是一个问题，如何合作也是一个问题。<BR><BR>　　七、酒与污水定律<BR><BR>&nbsp; &nbsp;酒与污水定律是指，如果把一匙酒倒进一桶污水中，你得到的是一桶污水；如果把一匙污水倒进一桶酒中，你得到的还是一桶污水。几乎在任何组织里，都存在几个难弄的人物，他们存在的目的似乎就是为了把事情搞糟。他们到处搬弄是非，传播流言、破坏组织内部的和谐。最糟糕的是，他们像果箱里的烂苹果，如果你不及时处理，它会迅速传染，把果箱里其它苹果也弄烂，“烂苹果”的可怕之处在于它那惊人的破坏力。一个正直能干的人进入一个混乱的部门可能会被吞没，而一个人无德无才者能很快将一个高效的部门变成一盘散沙。组织系统往往是脆弱的，是建立在相互理解、妥协和容忍的基础上的，它很容易被侵害、被毒化。破坏者能力非凡的另一个重要原因在于，破坏总比建设容易。一个能工巧匠花费时日精心制作的陶瓷器，一头驴子一秒钟就能毁坏掉。如果拥有再多的能工巧匠，也不会有多少像样的工作成果。如果你的组织里有这样的一头驴子，你应该马上把它清除掉；如果你无力这样做，你就应该把它拴起来。<BR><BR>　　八、水桶定律<BR><BR>&nbsp; &nbsp;水桶定律是讲，一只水桶能装多少水，完全取决于它最短的那块木板。这就是说任何一个组织都可能面临的一个共同问题，即构成组织的各个部分往往决定了整个组织的水平。<BR><BR>　　构成组织的各个部分往往是优劣不齐的，而劣质部分往往又决定整个组织的水平。<BR><BR>　　“水桶定律”与“酒与污水定律”不同，后者讨论的是组织中的破坏力量，而“最短的木板”却是组织中有用的一个部分，只不过比其它部分差一些，你不能把它们当成烂苹果扔掉。强弱只是相对而言的，无法消除。问题在于你容忍这种弱点到什么程度。如果它严重到成为阻碍工作的瓶颈，就不得不有所动作。<BR><BR>　　 如果你在一个组织中，你应该：<BR>　　 1、确保你不是最薄弱的部分；<BR>　　 2、避免或减少这一薄弱环节对你成功的影响；<BR>　　 3、如果不幸，你正处在这一环节中，你还可以采取有效的方法改进，或者转职去谋另一份工作。<BR><BR>　　九、蘑菇管理<BR><BR>　　蘑菇管理是许多组织对待初出茅庐者的一种管理方法，初学者被置于阴暗的角落（不受重视的部门，或打杂跑腿的工作），浇上一头大粪（无端的批评、指责、代人受过），任其自生自灭（得不到必要的指导和提携）。相信很多人都有这样一段“蘑菇”的经历，但这不一定是什么坏事，尤其是当一切都刚刚开始的时候，当上几天“蘑菇”，能够消除我们很多不切实际的幻想，让我们更加接近现实，看问题也更加实际，而对一个组织而言，一般地新进的人员都是一视同仁，从起薪到工作都不会有大的差别。无论你是多么优秀的人才，在刚开始的时候都只能从最简单的事情做起，“蘑菇”的经历对于成长中的年轻人来说，就像蚕茧，是羽化前必须经历的一步。所以，如何高效率地走过生命中的这一段，从中尽可能吸取经验，成熟起来，并树立良好的值得信赖的个人形象，是每个刚入社会的年轻人必须面对的课题。<BR>　　十、奥卡姆剃刀定律<BR><BR>　　如果你认为只有焦头烂额、忙忙碌碌地工作才可能取得成功，那么，你错了。<BR><BR>　　事情总是朝着复杂的方向发展，复杂会造成浪费，而效能则来自于单纯。在你做过的事情中可能绝大部分是毫无意义的，真正有效的活动只是其中的一小部分，而它们通常隐含于繁杂的事物中。找到关键的部分，去掉多余的活动，成功并不那么复杂。<BR><BR>　　奥卡姆剃刀：如无发要，勿增实体。<BR><BR>　　12世纪，英国奥卡姆的威廉对无休无止的关于“共相”、“本质”之类的争吵感到厌倦，主张唯名论，只承认确实存在的东西，认为那些空洞无物的普遍性要领都是无用的累赘，应当被无情地“剃除”。他主张，“如无必要，勿增实体。”这就是常说的“奥卡姆剃刀”。这把剃刀曾使很多人感到威胁，被认为是异端邪说，威廉本人也受到伤害。然而，这并未损害这把刀的锋利，相反，经过数百年越来越快，并早已超越了原来狭窄的领域而具有广泛的、丰富的、深刻的意义。<BR><BR>　　奥卡姆剃刀定律在企业管理中可进一步深化为简单与复杂定律：把事情变复杂很简单，把事情变简单很复杂。这个定律要求，我们在处理事情时，要把握事情的主要实质，把握主流，解决最根本的问题。尤其要顺应自然，不要把事情人为地复杂化，这样才能把事情处理好。<BR><BR>　　十一、二八法则<BR><BR>&nbsp; &nbsp;你所完成的工作里80%的成果，来自于你20%的付出；而80%的付出，只换来20%的成果<BR><BR>　　十二、钱的问题<BR><BR>　　当某人告诉你：“不是钱，而是原则问题”时，十有八九就是钱的问题。<BR><BR>　　照一般的说法，金钱是价值的尺度，交换的媒介，财富的贮藏。但是这种说法忽略了它的另一面，它令人陶醉、令人疯狂、令人激动的一面，也撇开了爱钱的心理不谈。马克思说，金钱是“人情的离心力”，就是指这一方面而言。<BR><BR>　　关于金钱的本质、作用和功过，从古到今，人们已经留下了无数精辟深刻的格言和妙语。我们常会看到，人们为钱而兴奋，努力赚钱，用财富的画面挑逗自己。金钱对世界的秩序以及我们的生活产生的影响是巨大的、广泛的，这种影响有时是潜在的，我们往往意识不到它的作用如此巨大，然而奇妙的是：它完全是人类自己创造的。致富的驱动力并不是起源于生物学上的需要，动物生活中也找不到任何相同的现象。它不能顺应基本的目标，不能满足根本的需求 -的确，“致富”的定义就是获得超过自己需要的东西。然而这个看起来漫无目标的驱动力却是人类最强大的力量，人类为金钱而互相伤害，远超过其他原因。<img src ="http://www.blogjava.net/guanlong/aggbug/5225.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/guanlong/" target="_blank">Stephen</a> 2005-05-26 13:07 <a href="http://www.blogjava.net/guanlong/archive/2005/05/26/5225.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>备忘录</title><link>http://www.blogjava.net/guanlong/archive/2005/05/25/5140.html</link><dc:creator>Stephen</dc:creator><author>Stephen</author><pubDate>Wed, 25 May 2005 01:27:00 GMT</pubDate><guid>http://www.blogjava.net/guanlong/archive/2005/05/25/5140.html</guid><wfw:comment>http://www.blogjava.net/guanlong/comments/5140.html</wfw:comment><comments>http://www.blogjava.net/guanlong/archive/2005/05/25/5140.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/guanlong/comments/commentRss/5140.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/guanlong/services/trackbacks/5140.html</trackback:ping><description><![CDATA[<SPAN style="FONT-SIZE: 18px"><STRONG>Altova XMLSpy 2005 SP3 企业特别版 <BR></STRONG><FONT size=3>所有XML编辑器中做得非常好的一个软件，专门用于设计，编辑和调试企业级的应用程序，包括XML, XML Schema, XSL/XSLT, SOAP, WSDL 和互联网服务技术，这是J2EE,.NET和数据库开发人员不可缺少的高性能的开发工具</FONT></SPAN><A href="http://www.xia8.com/SoftView/SoftView_7210.html"><BR>http://www.xia8.com/SoftView/SoftView_7210.html</A><img src ="http://www.blogjava.net/guanlong/aggbug/5140.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/guanlong/" target="_blank">Stephen</a> 2005-05-25 09:27 <a href="http://www.blogjava.net/guanlong/archive/2005/05/25/5140.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>在b/s开发中经常用到的javaScript技术 </title><link>http://www.blogjava.net/guanlong/archive/2005/04/16/3356.html</link><dc:creator>Stephen</dc:creator><author>Stephen</author><pubDate>Sat, 16 Apr 2005 06:35:00 GMT</pubDate><guid>http://www.blogjava.net/guanlong/archive/2005/04/16/3356.html</guid><wfw:comment>http://www.blogjava.net/guanlong/comments/3356.html</wfw:comment><comments>http://www.blogjava.net/guanlong/archive/2005/04/16/3356.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/guanlong/comments/commentRss/3356.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/guanlong/services/trackbacks/3356.html</trackback:ping><description><![CDATA[<SPAN id=ArticleContent1_ArticleContent1_lblContent><BR>一、验证类<BR>1、数字验证内<BR>&nbsp;&nbsp;1.1&nbsp;整数<BR>&nbsp;&nbsp;1.2&nbsp;大于0的整数&nbsp;（用于传来的ID的验证)<BR>&nbsp;&nbsp;1.3&nbsp;负整数的验证<BR>&nbsp;&nbsp;1.4&nbsp;整数不能大于iMax<BR>&nbsp;&nbsp;1.5&nbsp;整数不能小于iMin<BR>2、时间类<BR>&nbsp;&nbsp;2.1&nbsp;短时间，形如&nbsp;(13:04:06)<BR>&nbsp;&nbsp;2.2&nbsp;短日期，形如&nbsp;(2003-12-05)<BR>&nbsp;&nbsp;2.3&nbsp;长时间，形如&nbsp;(2003-12-05&nbsp;13:04:06)<BR>&nbsp;&nbsp;2.4&nbsp;只有年和月。形如(2003-05,或者2003-5)<BR>&nbsp;&nbsp;2.5&nbsp;只有小时和分钟,形如(12:03)<BR>3、表单类<BR>&nbsp;&nbsp;3.1&nbsp;所有的表单的值都不能为空<BR>&nbsp;&nbsp;3.2&nbsp;多行文本框的值不能为空。<BR>&nbsp;&nbsp;3.3&nbsp;多行文本框的值不能超过sMaxStrleng<BR>&nbsp;&nbsp;3.4&nbsp;多行文本框的值不能少于sMixStrleng<BR>&nbsp;&nbsp;3.5&nbsp;判断单选框是否选择。<BR>&nbsp;&nbsp;3.6&nbsp;判断复选框是否选择.<BR>&nbsp;&nbsp;3.7&nbsp;复选框的全选，多选，全不选，反选<BR>&nbsp;&nbsp;3.8&nbsp;文件上传过程中判断文件类型<BR>4、字符类<BR>&nbsp;&nbsp;4.1&nbsp;判断字符全部由a-Z或者是A-Z的字字母组成<BR>&nbsp;&nbsp;4.2&nbsp;判断字符由字母和数字组成。<BR>&nbsp;&nbsp;4.3&nbsp;判断字符由字母和数字，下划线,点号组成.且开头的只能是下划线和字母<BR>&nbsp;&nbsp;4.4&nbsp;字符串替换函数.Replace();<BR>5、浏览器类<BR>&nbsp;&nbsp;5.1&nbsp;判断浏览器的类型<BR>&nbsp;&nbsp;5.2&nbsp;判断ie的版本<BR>&nbsp;&nbsp;5.3&nbsp;判断客户端的分辨率<BR>&nbsp;&nbsp;<BR>6、结合类<BR>&nbsp;&nbsp;6.1&nbsp;email的判断。<BR>&nbsp;&nbsp;6.2&nbsp;手机号码的验证<BR>&nbsp;&nbsp;6.3&nbsp;身份证的验证<BR>&nbsp;&nbsp;<BR><BR>二、功能类<BR><BR>1、时间与相关控件类<BR>&nbsp;&nbsp;1.1&nbsp;日历<BR>&nbsp;&nbsp;1.2&nbsp;时间控件<BR>&nbsp;&nbsp;1.3&nbsp;万年历<BR>&nbsp;&nbsp;1.4&nbsp;显示动态显示时钟效果（文本，如OA中时间）<BR>&nbsp;&nbsp;1.5&nbsp;显示动态显示时钟效果&nbsp;(图像，像手表)&nbsp;<BR>2、表单类<BR>&nbsp;&nbsp;2.1&nbsp;自动生成表单<BR>&nbsp;&nbsp;2.2&nbsp;动态添加，修改，删除下拉框中的元素<BR>&nbsp;&nbsp;2.3&nbsp;可以输入内容的下拉框<BR>&nbsp;&nbsp;2.4&nbsp;多行文本框中只能输入iMax文字。如果多输入了，自动减少到iMax个文字（多用于短信发送)<BR>&nbsp;&nbsp;<BR>3、打印类<BR>&nbsp;&nbsp;3.1&nbsp;打印控件<BR>4、事件类<BR>&nbsp;&nbsp;4.1&nbsp;屏蔽右键<BR>&nbsp;&nbsp;4.2&nbsp;屏蔽所有功能键<BR>&nbsp;&nbsp;4.3&nbsp;--&gt;&nbsp;和&lt;--&nbsp;F5&nbsp;F11,F9,F1<BR>&nbsp;&nbsp;4.4&nbsp;屏蔽组合键ctrl+N<BR>5、网页设计类<BR>&nbsp;&nbsp;5.1&nbsp;连续滚动的文字，图片（注意是连续的，两段文字和图片中没有空白出现）<BR>&nbsp;&nbsp;5.2&nbsp;html编辑控件类<BR>&nbsp;&nbsp;5.3&nbsp;颜色选取框控件<BR>&nbsp;&nbsp;5.4&nbsp;下拉菜单<BR>&nbsp;&nbsp;5.5&nbsp;两层或多层次的下拉菜单<BR>&nbsp;&nbsp;5.6&nbsp;仿IE菜单的按钮。（效果如rongshuxa.com的导航栏目)<BR>&nbsp;&nbsp;5.7&nbsp;状态栏，title栏的动态效果（例子很多，可以研究一下）<BR>&nbsp;&nbsp;5.8&nbsp;双击后，网页自动滚屏<BR>6、树型结构。<BR>&nbsp;&nbsp;6.1&nbsp;asp+SQL版<BR>&nbsp;&nbsp;6.2&nbsp;asp+xml+sql版<BR>&nbsp;&nbsp;6.3&nbsp;java+sql或者java+sql+xml<BR>7、无边框效果的制作<BR>8、连动下拉框技术<BR>9、文本排序<BR><BR><BR>一、验证类<BR>1、数字验证内<BR>&nbsp;&nbsp;1.1&nbsp;整数<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;/^(-|\+)?\d+$/.test(str)<BR>&nbsp;&nbsp;1.2&nbsp;大于0的整数&nbsp;（用于传来的ID的验证)<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;/^\d+$/.test(str)<BR>&nbsp;&nbsp;1.3&nbsp;负整数的验证<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;/^-\d+$/.test(str)<BR>2、时间类<BR>&nbsp;&nbsp;2.1&nbsp;短时间，形如&nbsp;(13:04:06)<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;function&nbsp;isTime(str)<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;var&nbsp;a&nbsp;=&nbsp;str.match(/^(\d{1,2})(:)?(\d{1,2})\2(\d{1,2})$/);<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if&nbsp;(a&nbsp;==&nbsp;null)&nbsp;{alert('输入的参数不是时间格式');&nbsp;return&nbsp;false;}<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if&nbsp;(a[1]&gt;24&nbsp;||&nbsp;a[3]&gt;60&nbsp;||&nbsp;a[4]&gt;60)<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;alert("时间格式不对");<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return&nbsp;false<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return&nbsp;true;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<BR>&nbsp;&nbsp;2.2&nbsp;短日期，形如&nbsp;(2003-12-05)<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;function&nbsp;strDateTime(str)<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;var&nbsp;r&nbsp;=&nbsp;str.match(/^(\d{1,4})(-|\/)(\d{1,2})\2(\d{1,2})$/);&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if(r==null)return&nbsp;false;&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;var&nbsp;d=&nbsp;new&nbsp;Date(r[1],&nbsp;r[3]-1,&nbsp;r[4]);&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return&nbsp;(d.getFullYear()==r[1]&amp;&amp;(d.getMonth()+1)==r[3]&amp;&amp;d.getDate()==r[4]);<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<BR>&nbsp;&nbsp;2.3&nbsp;长时间，形如&nbsp;(2003-12-05&nbsp;13:04:06)<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;function&nbsp;strDateTime(str)<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;var&nbsp;reg&nbsp;=&nbsp;/^(\d{1,4})(-|\/)(\d{1,2})\2(\d{1,2})&nbsp;(\d{1,2}):(\d{1,2}):(\d{1,2})$/;&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;var&nbsp;r&nbsp;=&nbsp;str.match(reg);&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if(r==null)return&nbsp;false;&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;var&nbsp;d=&nbsp;new&nbsp;Date(r[1],&nbsp;r[3]-1,r[4],r[5],r[6],r[7]);&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return&nbsp;(d.getFullYear()==r[1]&amp;&amp;(d.getMonth()+1)==r[3]&amp;&amp;d.getDate()==r[4]&amp;&amp;d.getHours()==r[5]&amp;&amp;d.getMinutes()==r[6]&amp;&amp;d.getSeconds()==r[7]);<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<BR>&nbsp;&nbsp;2.4&nbsp;只有年和月。形如(2003-05,或者2003-5)<BR>&nbsp;&nbsp;2.5&nbsp;只有小时和分钟,形如(12:03)<BR>3、表单类<BR>&nbsp;&nbsp;3.1&nbsp;所有的表单的值都不能为空<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;input&nbsp;onblur="if(this.value.replace(/^\s+|\s+$/g,'')=='')alert('不能为空!')"&gt;<BR>&nbsp;&nbsp;3.2&nbsp;多行文本框的值不能为空。<BR>&nbsp;&nbsp;3.3&nbsp;多行文本框的值不能超过sMaxStrleng<BR>&nbsp;&nbsp;3.4&nbsp;多行文本框的值不能少于sMixStrleng<BR>&nbsp;&nbsp;3.5&nbsp;判断单选框是否选择。<BR>&nbsp;&nbsp;3.6&nbsp;判断复选框是否选择.<BR>&nbsp;&nbsp;3.7&nbsp;复选框的全选，多选，全不选，反选<BR>&nbsp;&nbsp;3.8&nbsp;文件上传过程中判断文件类型<BR>4、字符类<BR>&nbsp;&nbsp;4.1&nbsp;判断字符全部由a-Z或者是A-Z的字字母组成<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;input&nbsp;onblur="if(/[^a-zA-Z]/g.test(this.value))alert('有错')"&gt;<BR>&nbsp;&nbsp;4.2&nbsp;判断字符由字母和数字组成。<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;input&nbsp;onblur="if(/[^0-9a-zA-Z]/g.test(this.value))alert('有错')"&gt;<BR>&nbsp;&nbsp;4.3&nbsp;判断字符由字母和数字，下划线,点号组成.且开头的只能是下划线和字母<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;/^([a-zA-z_]{1})([\w]*)$/g.test(str)<BR>&nbsp;&nbsp;4.4&nbsp;字符串替换函数.Replace();<BR>5、浏览器类<BR>&nbsp;&nbsp;5.1&nbsp;判断浏览器的类型<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;window.navigat&nbsp;or.appName<BR>&nbsp;&nbsp;5.2&nbsp;判断ie的版本<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;window.navigat&nbsp;or.appVersion<BR>&nbsp;&nbsp;5.3&nbsp;判断客户端的分辨率<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;window.screen.height;&nbsp;&nbsp;window.screen.width;<BR>&nbsp;&nbsp;<BR>6、结合类<BR>&nbsp;&nbsp;6.1&nbsp;email的判断。<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;function&nbsp;ismail(mail)<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return(new&nbsp;RegExp(/^\w+((-\w+)|(\.\w+))*\@[A-Za-z0-9]+((\.|-)[A-Za-z0-9]+)*\.[A-Za-z0-9]+$/).test(mail));<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<BR>&nbsp;&nbsp;6.2&nbsp;手机号码的验证<BR>&nbsp;&nbsp;6.3&nbsp;身份证的验证<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;function&nbsp;isIdCardNo(num)<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if&nbsp;(isNaN(num))&nbsp;{alert("输入的不是数字！");&nbsp;return&nbsp;false;}<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;var&nbsp;len&nbsp;=&nbsp;num.length,&nbsp;re;&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if&nbsp;(len&nbsp;==&nbsp;15)<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;re&nbsp;=&nbsp;new&nbsp;RegExp(/^(\d{6})()?(\d{2})(\d{2})(\d{2})(\d{3})$/);<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;else&nbsp;if&nbsp;(len&nbsp;==&nbsp;18)<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;re&nbsp;=&nbsp;new&nbsp;RegExp(/^(\d{6})()?(\d{4})(\d{2})(\d{2})(\d{3})(\d)$/);<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;else&nbsp;{alert("输入的数字位数不对！");&nbsp;return&nbsp;false;}<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;var&nbsp;a&nbsp;=&nbsp;num.match(re);<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if&nbsp;(a&nbsp;!=&nbsp;null)<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if&nbsp;(len==15)<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;var&nbsp;D&nbsp;=&nbsp;new&nbsp;Date("19"+a[3]+"/"+a[4]+"/"+a[5]);<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;var&nbsp;B&nbsp;=&nbsp;D.getYear()==a[3]&amp;&amp;(D.getMonth()+1)==a[4]&amp;&amp;D.getDate()==a[5];<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;else<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;var&nbsp;D&nbsp;=&nbsp;new&nbsp;Date(a[3]+"/"+a[4]+"/"+a[5]);<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;var&nbsp;B&nbsp;=&nbsp;D.getFullYear()==a[3]&amp;&amp;(D.getMonth()+1)==a[4]&amp;&amp;D.getDate()==a[5];<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if&nbsp;(!B)&nbsp;{alert("输入的身份证号&nbsp;"+&nbsp;a[0]&nbsp;+"&nbsp;里出生日期不对！");&nbsp;return&nbsp;false;}<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return&nbsp;true;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<BR><BR>3.7&nbsp;复选框的全选，多选，全不选，反选<BR>&lt;f&nbsp;orm&nbsp;name=hrong&gt;<BR>&lt;input&nbsp;type=checkbox&nbsp;name=All&nbsp;onclick="checkAll('mm')"&gt;全选&lt;br/&gt;<BR>&lt;input&nbsp;type=checkbox&nbsp;name=mm&nbsp;onclick="checkItem('All')"&gt;&lt;br/&gt;<BR>&lt;input&nbsp;type=checkbox&nbsp;name=mm&nbsp;onclick="checkItem('All')"&gt;&lt;br/&gt;<BR>&lt;input&nbsp;type=checkbox&nbsp;name=mm&nbsp;onclick="checkItem('All')"&gt;&lt;br/&gt;<BR>&lt;input&nbsp;type=checkbox&nbsp;name=mm&nbsp;onclick="checkItem('All')"&gt;&lt;br/&gt;<BR>&lt;input&nbsp;type=checkbox&nbsp;name=mm&nbsp;onclick="checkItem('All')"&gt;&lt;br/&gt;&lt;br/&gt;<BR><BR><BR>&lt;input&nbsp;type=checkbox&nbsp;name=All2&nbsp;onclick="checkAll('mm2')"&gt;全选&lt;br/&gt;<BR>&lt;input&nbsp;type=checkbox&nbsp;name=mm2&nbsp;onclick="checkItem('All2')"&gt;&lt;br/&gt;<BR>&lt;input&nbsp;type=checkbox&nbsp;name=mm2&nbsp;onclick="checkItem('All2')"&gt;&lt;br/&gt;<BR>&lt;input&nbsp;type=checkbox&nbsp;name=mm2&nbsp;onclick="checkItem('All2')"&gt;&lt;br/&gt;<BR>&lt;input&nbsp;type=checkbox&nbsp;name=mm2&nbsp;onclick="checkItem('All2')"&gt;&lt;br/&gt;<BR>&lt;input&nbsp;type=checkbox&nbsp;name=mm2&nbsp;onclick="checkItem('All2')"&gt;&lt;br/&gt;<BR><BR>&lt;/f&nbsp;orm&gt;<BR><BR>&lt;SCRIPT&nbsp;LANGUAGE="java&nbsp;script"&gt;<BR>function&nbsp;checkAll(str)<BR>{<BR>&nbsp;&nbsp;var&nbsp;a&nbsp;=&nbsp;document.getElementsByName(str);<BR>&nbsp;&nbsp;var&nbsp;n&nbsp;=&nbsp;a.length;<BR>&nbsp;&nbsp;f&nbsp;or&nbsp;(var&nbsp;i=0;&nbsp;i&lt;n;&nbsp;i++)<BR>&nbsp;&nbsp;a[i].checked&nbsp;=&nbsp;window.event.srcElement.checked;<BR>}<BR>function&nbsp;checkItem(str)<BR>{<BR>&nbsp;&nbsp;var&nbsp;e&nbsp;=&nbsp;window.event.srcElement;<BR>&nbsp;&nbsp;var&nbsp;all&nbsp;=&nbsp;eval("document.hrong."+&nbsp;str);<BR>&nbsp;&nbsp;if&nbsp;(e.checked)<BR>&nbsp;&nbsp;{<BR>&nbsp;&nbsp;&nbsp;&nbsp;var&nbsp;a&nbsp;=&nbsp;document.getElementsByName(e.name);<BR>&nbsp;&nbsp;&nbsp;&nbsp;all.checked&nbsp;=&nbsp;true;<BR>&nbsp;&nbsp;&nbsp;&nbsp;f&nbsp;or&nbsp;(var&nbsp;i=0;&nbsp;i&lt;a.length;&nbsp;i++)<BR>&nbsp;&nbsp;&nbsp;&nbsp;{<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if&nbsp;(!a[i].checked){&nbsp;all.checked&nbsp;=&nbsp;false;&nbsp;break;}<BR>&nbsp;&nbsp;&nbsp;&nbsp;}<BR>&nbsp;&nbsp;}<BR>&nbsp;&nbsp;else&nbsp;all.checked&nbsp;=&nbsp;false;<BR>}<BR>&lt;/SCRIPT&gt;<BR><BR>3.8&nbsp;文件上传过程中判断文件类型<BR>&lt;input&nbsp;type=file&nbsp;onchange="alert(this.value.match(/^(.*)(\.)(.{1,8})$/)[3])"&gt;<BR><BR>画图:<BR>&lt;OBJECT&nbsp;<BR>id=S&nbsp;<BR>style="LEFT:&nbsp;0px;&nbsp;WIDTH:&nbsp;392px;&nbsp;TOP:&nbsp;0px;&nbsp;HEIGHT:&nbsp;240px"&nbsp;<BR>height=240&nbsp;<BR>width=392&nbsp;<BR>classid="clsid:369303C2-D7AC-11D0-89D5-00A0C90833E6"&gt;<BR>&lt;/OBJECT&gt;<BR>&lt;SCRIPT&gt;<BR>S.DrawingSurface.ArcDegrees(0,0,0,30,50,60);<BR>S.DrawingSurface.ArcRadians(30,0,0,30,50,60);<BR>S.DrawingSurface.Line(10,10,100,100);<BR>&lt;/SCRIPT&gt;<BR><BR>写注册表：<BR>&lt;SCRIPT&gt;<BR>var&nbsp;WshShell&nbsp;=&nbsp;WScript.CreateObject("WScript.Shell");<BR>WshShell.RegWrite&nbsp;("HKCU\\Software\\ACME\\F&nbsp;ortuneTeller\\",&nbsp;1,&nbsp;"REG_BINARY");<BR>WshShell.RegWrite&nbsp;("HKCU\\Software\\ACME\\F&nbsp;ortuneTeller\\MindReader",&nbsp;"Goocher!",&nbsp;"REG_SZ");<BR>var&nbsp;bKey&nbsp;=&nbsp;&nbsp;&nbsp;&nbsp;WshShell.RegRead&nbsp;("HKCU\\Software\\ACME\\F&nbsp;ortuneTeller\\");<BR>WScript.Echo&nbsp;(WshShell.RegRead&nbsp;("HKCU\\Software\\ACME\\F&nbsp;ortuneTeller\\MindReader"));<BR>WshShell.RegDelete&nbsp;("HKCU\\Software\\ACME\\F&nbsp;ortuneTeller\\MindReader");<BR>WshShell.RegDelete&nbsp;("HKCU\\Software\\ACME\\F&nbsp;ortuneTeller\\");<BR>WshShell.RegDelete&nbsp;("HKCU\\Software\\ACME\\");<BR>&lt;/SCRIPT&gt;<BR><BR>TABLAE相关(客户端动态增加行列）<BR>&lt;HTML&gt;<BR>&lt;SCRIPT&nbsp;LANGUAGE="JScript"&gt;<BR>function&nbsp;numberCells()&nbsp;{<BR>&nbsp;&nbsp;&nbsp;&nbsp;var&nbsp;count=0;<BR>&nbsp;&nbsp;&nbsp;&nbsp;f&nbsp;or&nbsp;(i=0;&nbsp;i&nbsp;&lt;&nbsp;document.all.mytable.rows.length;&nbsp;i++)&nbsp;{<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;f&nbsp;or&nbsp;(j=0;&nbsp;j&nbsp;&lt;&nbsp;document.all.mytable.rows(i).cells.length;&nbsp;j++)&nbsp;{<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;document.all.mytable.rows(i).cells(j).innerText&nbsp;=&nbsp;count;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;count++;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<BR>&nbsp;&nbsp;&nbsp;&nbsp;}<BR>}<BR>&lt;/SCRIPT&gt;<BR>&lt;BODY&nbsp;onload="numberCells()"&gt;<BR>&lt;TABLE&nbsp;id=mytable&nbsp;b&nbsp;order=1&gt;<BR>&lt;TR&gt;&lt;TH&gt;&amp;nbsp;&lt;/TH&gt;&lt;TH&gt;&amp;nbsp;&lt;/TH&gt;&lt;TH&gt;&amp;nbsp;&lt;/TH&gt;&lt;TH&gt;&amp;nbsp;&lt;/TH&gt;&lt;/TR&gt;<BR>&lt;TR&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;/TR&gt;<BR>&lt;TR&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;/TR&gt;<BR>&lt;/TABLE&gt;<BR>&lt;/BODY&gt;<BR>&lt;/HTML&gt;&nbsp;<BR><BR>１．身份证严格验证：<BR><BR>&lt;script&gt;<BR>var&nbsp;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:"国外"}<BR>&nbsp;&nbsp;<BR>function&nbsp;cidInfo(sId){<BR>&nbsp;var&nbsp;iSum=0<BR>&nbsp;var&nbsp;info=""<BR>&nbsp;if(!/^\d{17}(\d|x)$/i.test(sId))return&nbsp;false;<BR>&nbsp;sId=sId.replace(/x$/i,"a");<BR>&nbsp;if(aCity[parseInt(sId.substr(0,2))]==null)return&nbsp;"Err&nbsp;or:非法地区";<BR>&nbsp;sBirthday=sId.substr(6,4)+"-"+Number(sId.substr(10,2))+"-"+Number(sId.substr(12,2));<BR>&nbsp;var&nbsp;d=new&nbsp;Date(sBirthday.replace(/-/g,"/"))<BR>&nbsp;if(sBirthday!=(d.getFullYear()+"-"+&nbsp;(d.getMonth()+1)&nbsp;+&nbsp;"-"&nbsp;+&nbsp;d.getDate()))return&nbsp;"Err&nbsp;or:非法生日";<BR>&nbsp;f&nbsp;or(var&nbsp;i&nbsp;=&nbsp;17;i&gt;=0;i&nbsp;--)&nbsp;iSum&nbsp;+=&nbsp;(Math.pow(2,i)&nbsp;%&nbsp;11)&nbsp;*&nbsp;parseInt(sId.charAt(17&nbsp;-&nbsp;i),11)<BR>&nbsp;if(iSum%11!=1)return&nbsp;"Err&nbsp;or:非法证号";<BR>&nbsp;return&nbsp;aCity[parseInt(sId.substr(0,2))]+","+sBirthday+","+(sId.substr(16,1)%2?"男":"女")<BR>}<BR><BR>document.write(cidInfo("380524198002300016"),"&lt;br/&gt;");<BR>document.write(cidInfo("340524198002300019"),"&lt;br/&gt;")<BR>document.write(cidInfo("340524197711111111"),"&lt;br/&gt;")<BR>document.write(cidInfo("34052419800101001x"),"&lt;br/&gt;");<BR>&lt;/script&gt;<BR><BR>２．验证ＩＰ地址<BR>&lt;SCRIPT&nbsp;LANGUAGE="java&nbsp;script"&gt;<BR>function&nbsp;isip(s){<BR>&nbsp;var&nbsp;check=function(v){try{return&nbsp;(v&lt;=255&nbsp;&amp;&amp;&nbsp;v&gt;=0)}catch(x){return&nbsp;false}};<BR>&nbsp;var&nbsp;re=s.split(".")<BR>&nbsp;return&nbsp;(re.length==4)?(check(re[0])&nbsp;&amp;&amp;&nbsp;check(re[1])&nbsp;&amp;&amp;&nbsp;check(re[2])&nbsp;&amp;&amp;&nbsp;check(re[3])):false<BR>}<BR><BR>var&nbsp;s="202.197.78.129";<BR>alert(isip(s))<BR>&lt;/SCRIPT&gt;<BR><BR>&nbsp;<BR><BR>３．加sp1后还能用的无边框窗口！！<BR>&lt;HTML&nbsp;XMLNS:IE&gt;<BR>&lt;meta&nbsp;http-equiv="Content-Type"&nbsp;content="text/html;&nbsp;charset=gb2312"&gt;<BR>&lt;IE:Download&nbsp;ID="include"&nbsp;STYLE="behavi&nbsp;or:url(#default#download)"&nbsp;/&gt;<BR>&lt;title&gt;Chromeless&nbsp;Window&lt;/title&gt;<BR><BR>&lt;SCRIPT&nbsp;LANGUAGE="JScript"&gt;<BR>/*---&nbsp;Special&nbsp;Thanks&nbsp;F&nbsp;or&nbsp;andot&nbsp;---*/<BR><BR>/*<BR>&nbsp;This&nbsp;following&nbsp;code&nbsp;are&nbsp;designed&nbsp;and&nbsp;writen&nbsp;by&nbsp;Windy_sk&nbsp;&lt;seasonx@163.net&gt;<BR>&nbsp;You&nbsp;can&nbsp;use&nbsp;it&nbsp;freely,&nbsp;but&nbsp;u&nbsp;must&nbsp;held&nbsp;all&nbsp;the&nbsp;copyright&nbsp;items!<BR>*/<BR><BR>/*---&nbsp;Thanks&nbsp;F&nbsp;or&nbsp;andot&nbsp;Again&nbsp;---*/<BR><BR>var&nbsp;CW_width&nbsp;=&nbsp;400;<BR>var&nbsp;CW_height&nbsp;=&nbsp;300;<BR>var&nbsp;CW_top&nbsp;=&nbsp;100;<BR>var&nbsp;CW_left&nbsp;=&nbsp;100;<BR>var&nbsp;CW_url&nbsp;=&nbsp;"/";<BR>var&nbsp;New_CW&nbsp;=&nbsp;window.createPopup();<BR>var&nbsp;CW_Body&nbsp;=&nbsp;New_CW.document.body;<BR>var&nbsp;content&nbsp;=&nbsp;"";<BR>var&nbsp;CSStext&nbsp;=&nbsp;"margin:1px;col&nbsp;or:black;&nbsp;b&nbsp;order:2px&nbsp;outset;b&nbsp;order-style:expression(onmouseout=onmouseup=function(){this.style.b&nbsp;orderStyle='outset'},&nbsp;onmousedown=function(){if(event.button!=2)this.style.b&nbsp;orderStyle='inset'});background-col&nbsp;or:buttonface;width:16px;height:14px;font-size:12px;line-height:11px;curs&nbsp;or:Default;";<BR><BR>//Build&nbsp;Window<BR>include.startDownload(CW_url,&nbsp;function(source){content=source});<BR><BR>function&nbsp;insert_content(){<BR>&nbsp;var&nbsp;temp&nbsp;=&nbsp;"";<BR>&nbsp;CW_Body.style.overflow&nbsp;&nbsp;=&nbsp;"hidden";<BR>&nbsp;CW_Body.style.backgroundCol&nbsp;or&nbsp;=&nbsp;"white";<BR>&nbsp;CW_Body.style.b&nbsp;order&nbsp;&nbsp;=&nbsp;&nbsp;"solid&nbsp;black&nbsp;1px";<BR>&nbsp;content&nbsp;=&nbsp;content.replace(/&lt;a&nbsp;([^&gt;]*)&gt;/g,"&lt;a&nbsp;onclick='parent.open(this.href);return&nbsp;false'&nbsp;$1&gt;");<BR>&nbsp;temp&nbsp;+=&nbsp;"&lt;table&nbsp;width=100%&nbsp;height=100%&nbsp;cellpadding=0&nbsp;cellspacing=0&nbsp;b&nbsp;order=0&gt;";<BR>&nbsp;temp&nbsp;+=&nbsp;"&lt;tr&nbsp;style=';font-size:12px;background:#0099CC;height:20;curs&nbsp;or:default'&nbsp;ondblclick=\"Max.innerText=Max.innerText=='1'?'2':'1';parent.if_max=!parent.if_max;parent.show_CW();\"&nbsp;onmouseup='parent.drag_up(event)'&nbsp;onmousemove='parent.drag_move(event)'&nbsp;onmousedown='parent.drag_down(event)'&nbsp;onselectstart='return&nbsp;false'&nbsp;oncontextmenu='return&nbsp;false'&gt;";<BR>&nbsp;temp&nbsp;+=&nbsp;"&lt;td&nbsp;style='col&nbsp;or:#ffffff;padding-left:5px'&gt;Chromeless&nbsp;Window&nbsp;F&nbsp;or&nbsp;IE6&nbsp;SP1&lt;/td&gt;";<BR>&nbsp;temp&nbsp;+=&nbsp;"&lt;td&nbsp;style='col&nbsp;or:#ffffff;padding-right:5px;'&nbsp;align=right&gt;";<BR>&nbsp;temp&nbsp;+=&nbsp;"&lt;span&nbsp;id=Help&nbsp;&nbsp;onclick=\"alert('Chromeless&nbsp;Window&nbsp;F&nbsp;or&nbsp;IE6&nbsp;SP1&nbsp;&nbsp;-&nbsp;&nbsp;Ver&nbsp;1.0\\n\\nCode&nbsp;By&nbsp;Windy_sk\\n\\nSpecial&nbsp;Thanks&nbsp;F&nbsp;or&nbsp;andot')\"&nbsp;style=\""+CSStext+"font-family:System;padding-right:2px;\"&gt;?&lt;/span&gt;";<BR>&nbsp;temp&nbsp;+=&nbsp;"&lt;span&nbsp;id=Min&nbsp;&nbsp;&nbsp;onclick='parent.New_CW.hide();parent.blur()'&nbsp;style=\""+CSStext+"font-family:Webdings;\"&nbsp;title='Minimum'&gt;0&lt;/span&gt;";<BR>&nbsp;temp&nbsp;+=&nbsp;"&lt;span&nbsp;id=Max&nbsp;&nbsp;&nbsp;onclick=\"this.innerText=this.innerText=='1'?'2':'1';parent.if_max=!parent.if_max;parent.show_CW();\"&nbsp;style=\""+CSStext+"font-family:Webdings;\"&nbsp;title='Maximum'&gt;1&lt;/span&gt;";<BR>&nbsp;temp&nbsp;+=&nbsp;"&lt;span&nbsp;id=Close&nbsp;onclick='parent.opener=null;parent.close()'&nbsp;style=\""+CSStext+"font-family:System;padding-right:2px;\"&nbsp;title='Close'&gt;x&lt;/span&gt;";<BR>&nbsp;temp&nbsp;+=&nbsp;"&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&nbsp;colspan=2&gt;";<BR>&nbsp;temp&nbsp;+=&nbsp;"&lt;div&nbsp;id=include&nbsp;style='overflow:scroll;overflow-x:hidden;overflow-y:auto;&nbsp;HEIGHT:&nbsp;100%;&nbsp;width:"+CW_width+"'&gt;";<BR>&nbsp;temp&nbsp;+=&nbsp;content;<BR>&nbsp;temp&nbsp;+=&nbsp;"&lt;/div&gt;";<BR>&nbsp;temp&nbsp;+=&nbsp;"&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;";<BR>&nbsp;CW_Body.innerHTML&nbsp;=&nbsp;temp;<BR>}<BR><BR>setTimeout("insert_content()",1000);<BR><BR>var&nbsp;if_max&nbsp;=&nbsp;true;<BR>function&nbsp;show_CW(){<BR>&nbsp;window.moveTo(10000,&nbsp;10000);<BR>&nbsp;if(if_max){<BR>&nbsp;&nbsp;New_CW.show(CW_top,&nbsp;CW_left,&nbsp;CW_width,&nbsp;CW_height);<BR>&nbsp;&nbsp;if(typeof(New_CW.document.all.include)!="undefined"){<BR>&nbsp;&nbsp;&nbsp;New_CW.document.all.include.style.width&nbsp;=&nbsp;CW_width;<BR>&nbsp;&nbsp;&nbsp;New_CW.document.all.Max.innerText&nbsp;=&nbsp;"1";<BR>&nbsp;&nbsp;}<BR>&nbsp;&nbsp;<BR>&nbsp;}else{<BR>&nbsp;&nbsp;New_CW.show(0,&nbsp;0,&nbsp;screen.width,&nbsp;screen.height);<BR>&nbsp;&nbsp;New_CW.document.all.include.style.width&nbsp;=&nbsp;screen.width;<BR>&nbsp;}<BR>}<BR><BR>window.onfocus&nbsp;&nbsp;=&nbsp;show_CW;<BR>window.onresize&nbsp;=&nbsp;show_CW;<BR><BR>//&nbsp;Move&nbsp;Window<BR>var&nbsp;drag_x,drag_y,draging=false<BR><BR>function&nbsp;drag_move(e){<BR>&nbsp;if&nbsp;(draging){<BR>&nbsp;&nbsp;New_CW.show(e.screenX-drag_x,&nbsp;e.screenY-drag_y,&nbsp;CW_width,&nbsp;CW_height);<BR>&nbsp;&nbsp;return&nbsp;false;<BR>&nbsp;}<BR>}<BR><BR>function&nbsp;drag_down(e){<BR>&nbsp;if(e.button==2)return;<BR>&nbsp;if(New_CW.document.body.offsetWidth==screen.width&nbsp;&amp;&amp;&nbsp;New_CW.document.body.offsetHeight==screen.height)return;<BR>&nbsp;drag_x=e.clientX;<BR>&nbsp;drag_y=e.clientY;<BR>&nbsp;draging=true;<BR>&nbsp;e.srcElement.setCapture();<BR>}<BR><BR>function&nbsp;drag_up(e){<BR>&nbsp;draging=false;<BR>&nbsp;e.srcElement.releaseCapture();<BR>&nbsp;if(New_CW.document.body.offsetWidth==screen.width&nbsp;&amp;&amp;&nbsp;New_CW.document.body.offsetHeight==screen.height)&nbsp;return;<BR>&nbsp;CW_top&nbsp;&nbsp;=&nbsp;e.screenX-drag_x;<BR>&nbsp;CW_left&nbsp;=&nbsp;e.screenY-drag_y;<BR>}<BR><BR>&lt;/SCRIPT&gt;<BR>&lt;/HTML&gt;<BR><BR>电话号码的验证<BR><BR>要求：<BR>　　(1)电话号码由数字、"("、")"和"-"构成<BR>　　(2)电话号码为3到8位<BR>　　(3)如果电话号码中包含有区号，那么区号为三位或四位<BR>　　(4)区号用"("、")"或"-"和其他部分隔开<BR>　　(5)移动电话号码为11或12位，如果为12位,那么第一位为0<BR>　　(6)11位移动电话号码的第一位和第二位为"13"<BR>　　(7)12位移动电话号码的第二位和第三位为"13"<BR>　　根据这几条规则，可以与出以下正则表达式：<BR>　　(^[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}$)<BR><BR><BR>&lt;script&nbsp;language="java&nbsp;script"&gt;<BR>function&nbsp;PhoneCheck(s)&nbsp;{<BR>var&nbsp;str=s;<BR>var&nbsp;reg=/(^[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}$)/<BR>alert(reg.test(str));<BR>}<BR>&lt;/script&gt;<BR>&lt;input&nbsp;type=text&nbsp;name="iphone"&gt;<BR>&lt;input&nbsp;type=button&nbsp;onclick="PhoneCheck(document.all.iphone.value)"&nbsp;value="Check"&gt;<BR><BR>具有在输入非数字字符不回显的效果，即对非数字字符的输入不作反应。<BR>function&nbsp;numbersonly(field,event){<BR>&nbsp;var&nbsp;key,keychar;<BR>&nbsp;if(window.event){<BR>&nbsp;&nbsp;key&nbsp;=&nbsp;window.event.keyCode;<BR>&nbsp;}<BR>&nbsp;else&nbsp;if&nbsp;(event){<BR>&nbsp;&nbsp;key&nbsp;=&nbsp;event.which;<BR>&nbsp;}<BR>&nbsp;else{<BR>&nbsp;&nbsp;return&nbsp;true<BR>&nbsp;}<BR>&nbsp;keychar&nbsp;=&nbsp;String.fromCharCode(key);<BR>&nbsp;if((key&nbsp;==&nbsp;null)||(key&nbsp;==&nbsp;0)||(key&nbsp;==&nbsp;8)||(key&nbsp;==&nbsp;9)||(key&nbsp;==&nbsp;13)||(key&nbsp;==&nbsp;27)){<BR>&nbsp;&nbsp;return&nbsp;true;<BR>&nbsp;}<BR>&nbsp;else&nbsp;if(("0123456789.").indexOf(keychar)&gt;-1){<BR>&nbsp;&nbsp;window.status&nbsp;=&nbsp;"";<BR>&nbsp;&nbsp;return&nbsp;true;<BR>&nbsp;}<BR>&nbsp;else&nbsp;{<BR>&nbsp;&nbsp;window.status&nbsp;=&nbsp;"Field&nbsp;excepts&nbsp;numbers&nbsp;only";<BR>&nbsp;&nbsp;return&nbsp;false;<BR>&nbsp;}<BR>}<BR><BR>验证ip&nbsp;<BR><BR>str=document.RegExpDemo.txtIP.value;<BR>if(/^(\d{1,3})\.(\d{1,3})\.(\d{1,3})\.(\d{1,3})$/.test(str)==false)<BR>{<BR>&nbsp;window.alert('错误的IP地址格式');<BR>&nbsp;document.RegExpDemo.txtIP.select();<BR>&nbsp;document.RegExpDemo.txtIP.focus();<BR>&nbsp;return;<BR>}<BR>if(RegExp.$1&lt;1&nbsp;||&nbsp;RegExp.$1&gt;254||RegExp.$2&lt;0||RegExp.$2&gt;254||RegExp.$3&lt;0||RegExp.$3&gt;254||RegExp.$4&lt;1||RegExp.$4&gt;254)<BR>{<BR>&nbsp;window.alert('错误的IP地址');<BR>&nbsp;document.RegExpDemo.txtIP.select();<BR>&nbsp;document.RegExpDemo.txtIP.focus();<BR>&nbsp;return;<BR>}<BR>//剔除&nbsp;如&nbsp;&nbsp;010.020.020.03&nbsp;前面&nbsp;的0&nbsp;<BR>var&nbsp;str=str.replace(/0(\d)/g,"$1");<BR>str=str.replace(/0(\d)/g,"$1");<BR>window.alert(str);<BR><BR><BR>//一下是取数据的类<BR>//Obj参数指定数据的来源(限定Table),默认第一行为字段名称行<BR>//GetTableData类提供MoveNext方法,参数是表的行向上或向下移动的位数,正数向下移动,负数向上.<BR>//GetFieldData方法获得指定的列名的数据<BR>//S&nbsp;ort_desc方法对指定的列按降序排列<BR>//S&nbsp;ort_asc方法对指定的列按升序排列<BR>//GetData方法返回字段值为特定值的数据数组,提供数据,可以在外部进行其他处理<BR>//Delete方法删除当前记录,数组减少一行<BR>//初始化,Obj:table的名字,Leftlen:左面多余数据长度,Rightlen:右面多余数据长度,<BR>function&nbsp;GetTableData(Obj,LeftLen,RightLen){<BR>var&nbsp;MyObj=document.all(Obj);<BR>var&nbsp;iRow=MyObj.rows.length;<BR>var&nbsp;iLen=MyObj.rows[0].cells.length;<BR>var&nbsp;i,j;<BR><BR>TableData=new&nbsp;Array();<BR>&nbsp;&nbsp;f&nbsp;or&nbsp;(i=0;i&lt;&nbsp;iRow;i++){<BR>&nbsp;&nbsp;&nbsp;TableData[i]=new&nbsp;Array();<BR>&nbsp;&nbsp;&nbsp;f&nbsp;or&nbsp;(j=0;j&lt;iLen;j++){<BR>&nbsp;&nbsp;&nbsp;TableStr=MyObj.rows(i).cells(j).innerText;<BR>&nbsp;&nbsp;&nbsp;TableStr=TableStr.substring(LeftLen,&nbsp;TableStr.length-RightLen).Trim();<BR>&nbsp;&nbsp;&nbsp;TableStr=TableStr.replace(/&nbsp;/gi,"").replace(/\r\n/ig,"");<BR>&nbsp;&nbsp;&nbsp;TableData[i][j]=TableStr;<BR>&nbsp;&nbsp;&nbsp;}<BR>&nbsp;&nbsp;&nbsp;}<BR>&nbsp;&nbsp;<BR>&nbsp;&nbsp;this.TableData=TableData;&nbsp;<BR>&nbsp;&nbsp;this.cols=this.TableData[0].length;<BR>&nbsp;&nbsp;this.rows=this.TableData.length;<BR>&nbsp;&nbsp;this.rowindex=0;<BR>}<BR><BR><BR>function&nbsp;movenext(Step){<BR>if&nbsp;(this.rowindex&gt;=this.rows){<BR>return<BR>}<BR><BR>if&nbsp;(Step==""&nbsp;||&nbsp;typeof(Step)=="undefined")&nbsp;{<BR>&nbsp;if&nbsp;(this.rowindex&lt;this.rows-1)<BR>&nbsp;this.rowindex++;<BR>&nbsp;return;<BR><BR>}<BR>&nbsp;else{<BR>&nbsp;&nbsp;if&nbsp;(this.rowindex&nbsp;+&nbsp;Step&lt;=this.rows-1&nbsp;&amp;&amp;&nbsp;this.rowindex&nbsp;+&nbsp;Step&gt;=0&nbsp;){<BR>&nbsp;&nbsp;this.rowindex=this.rowindex&nbsp;+&nbsp;Step;<BR>&nbsp;&nbsp;}<BR>&nbsp;&nbsp;else<BR>&nbsp;&nbsp;{<BR>&nbsp;&nbsp;if&nbsp;(this.rowindex&nbsp;+&nbsp;Step&lt;0){<BR>&nbsp;&nbsp;&nbsp;this.rowindex=&nbsp;0;<BR>&nbsp;&nbsp;&nbsp;return;<BR>&nbsp;&nbsp;&nbsp;}<BR>&nbsp;&nbsp;if&nbsp;(this.rowindex&nbsp;+&nbsp;Step&gt;this.rows-1){<BR>&nbsp;&nbsp;&nbsp;this.rowindex=&nbsp;this.rows-1;<BR>&nbsp;&nbsp;&nbsp;return;<BR>&nbsp;&nbsp;&nbsp;}<BR>&nbsp;&nbsp;}<BR>&nbsp;}<BR>}<BR><BR><BR>function&nbsp;getfielddata(Field){<BR>var&nbsp;colindex=-1;<BR>var&nbsp;i=0;<BR>&nbsp;if&nbsp;(typeof(Field)&nbsp;==&nbsp;"number"){<BR>&nbsp;&nbsp;&nbsp;colindex=Field;<BR>&nbsp;&nbsp;}<BR>&nbsp;else<BR>&nbsp;{<BR>&nbsp;f&nbsp;or&nbsp;(i=0;i&lt;this.cols&nbsp;&amp;&amp;&nbsp;this.rowindex&lt;this.rows&nbsp;;i++){<BR>&nbsp;&nbsp;&nbsp;if&nbsp;(this.TableData[0][i]==Field){<BR>&nbsp;&nbsp;&nbsp;colindex=i;<BR>&nbsp;&nbsp;&nbsp;break;<BR>&nbsp;&nbsp;&nbsp;}&nbsp;&nbsp;<BR>&nbsp;&nbsp;}<BR>&nbsp;}<BR>&nbsp;&nbsp;if&nbsp;(colindex!=-1)&nbsp;{<BR>&nbsp;&nbsp;return&nbsp;this.TableData[this.rowindex][colindex];<BR>&nbsp;&nbsp;}<BR><BR>}<BR><BR>&nbsp;<BR><BR>function&nbsp;s&nbsp;ort_desc(){//降序<BR>&nbsp;var&nbsp;colindex=-1;<BR>&nbsp;var&nbsp;highindex=-1;<BR>&nbsp;desc_array=new&nbsp;Array();<BR>&nbsp;var&nbsp;i,j;<BR>f&nbsp;or&nbsp;(n=0;&nbsp;n&lt;arguments.length;&nbsp;n++){<BR>&nbsp;Field=arguments[arguments.length-1-n];<BR>&nbsp;f&nbsp;or&nbsp;(i=0;i&lt;this.cols;i++){<BR>&nbsp;&nbsp;if&nbsp;(this.TableData[0][i]==Field){<BR>&nbsp;&nbsp;colindex=i;<BR>&nbsp;&nbsp;break;<BR>&nbsp;&nbsp;}&nbsp;&nbsp;<BR>&nbsp;}<BR>&nbsp;&nbsp;&nbsp;if&nbsp;(&nbsp;colindex==-1&nbsp;)<BR>&nbsp;&nbsp;return;<BR>&nbsp;&nbsp;&nbsp;else<BR>&nbsp;&nbsp;{<BR>&nbsp;&nbsp;desc_array[0]=this.TableData[0];<BR>&nbsp;&nbsp;f&nbsp;or(i=1;i&lt;this.rows;i++){<BR>&nbsp;&nbsp;desc_array[i]=this.TableData[1];<BR>&nbsp;&nbsp;highindex=1;<BR>&nbsp;&nbsp;&nbsp;f&nbsp;or(j=1;j&lt;this.TableData.length;j++){<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if&nbsp;&nbsp;(desc_array[i][colindex]&lt;this.TableData[j][colindex]){&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;desc_array[i]=this.TableData[j];&nbsp;&nbsp;&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;highindex=j;<BR>&nbsp;&nbsp;&nbsp;&nbsp;}<BR>&nbsp;&nbsp;&nbsp;&nbsp;<BR>&nbsp;&nbsp;&nbsp;}<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if&nbsp;(highindex!=-1)<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;this.TableData=this.TableData.slice(0,highindex).concat(this.TableData.slice(highindex+1,this.TableData.length));&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<BR>&nbsp;&nbsp;}<BR>&nbsp;}<BR><BR>&nbsp;<BR>&nbsp;this.TableData=desc_array;<BR>}<BR>&nbsp;return;<BR>}<BR><BR>&nbsp;<BR><BR>function&nbsp;s&nbsp;ort_asc(){//升序<BR>&nbsp;var&nbsp;colindex=-1;<BR>&nbsp;var&nbsp;highindex=-1;<BR>&nbsp;var&nbsp;i,j;<BR>f&nbsp;or&nbsp;(n=0;&nbsp;n&lt;arguments.length;&nbsp;n++){<BR>&nbsp;&nbsp;&nbsp;asc_array=new&nbsp;Array();<BR>&nbsp;&nbsp;&nbsp;Field=arguments[arguments.length-1-n];<BR>&nbsp;&nbsp;&nbsp;f&nbsp;or&nbsp;(i=0;i&lt;this.cols;i++){<BR>&nbsp;&nbsp;&nbsp;&nbsp;if&nbsp;(this.TableData[0][i]==Field){<BR>&nbsp;&nbsp;&nbsp;&nbsp;colindex=i;<BR>&nbsp;&nbsp;&nbsp;&nbsp;break;<BR>&nbsp;&nbsp;&nbsp;&nbsp;}&nbsp;&nbsp;<BR>&nbsp;&nbsp;&nbsp;}<BR>&nbsp;&nbsp;&nbsp;if&nbsp;(&nbsp;colindex==-1&nbsp;)<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return;<BR>&nbsp;&nbsp;&nbsp;else<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;asc_array[0]=this.TableData[0];<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;f&nbsp;or(i=1;i&lt;this.rows;i++){<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;asc_array[i]=this.TableData[1];<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;highindex=1;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;f&nbsp;or(j=1;j&lt;this.TableData.length;j++){//找出最小的列值<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if&nbsp;&nbsp;(asc_array[i][colindex]&gt;this.TableData[j][colindex]){&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;asc_array[i]=this.TableData[j];&nbsp;&nbsp;&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;highindex=j;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if&nbsp;(highindex!=-1)<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;this.TableData=this.TableData.slice(0,highindex).concat(this.TableData.slice(highindex+1,this.TableData.length));&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<BR><BR>&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;this.TableData=asc_array;<BR>&nbsp;}<BR>&nbsp;return;<BR>}<BR><BR>&nbsp;<BR><BR>function&nbsp;getData(Field,FieldValue){<BR>var&nbsp;colindex=-1;<BR>var&nbsp;i,j;<BR><BR>GetData=new&nbsp;Array();<BR>&nbsp;&nbsp;if&nbsp;(typeof(Field)=="undefined"&nbsp;||&nbsp;typeof(FieldValue)=="undefined"&nbsp;){<BR>&nbsp;&nbsp;return&nbsp;this.TableData;<BR>&nbsp;&nbsp;}<BR>&nbsp;&nbsp;<BR>&nbsp;&nbsp;&nbsp;f&nbsp;or(j=0;j&lt;this.cols;j++){<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if&nbsp;&nbsp;(this.TableData[0][j]==Field){<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;colindex=j;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<BR>&nbsp;&nbsp;&nbsp;}<BR>&nbsp;&nbsp;&nbsp;if&nbsp;(colindex!=-1){<BR>&nbsp;&nbsp;&nbsp;<BR>&nbsp;&nbsp;&nbsp;f&nbsp;or(i=1;i&lt;this.rows;i++){<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if&nbsp;&nbsp;(this.TableData[i][colindex]==FieldValue){<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;GetData[i]=new&nbsp;Array();<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;GetData[i]=this.TableData[i];&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<BR>&nbsp;&nbsp;&nbsp;}<BR>&nbsp;&nbsp;&nbsp;}<BR>&nbsp;&nbsp;&nbsp;return&nbsp;GetData;<BR>}<BR>function&nbsp;DeletE(){<BR>this.TableData=this.TableData.slice(0,this.rowindex).concat(this.TableData.slice(this.rowindex+1,this.TableData.length));&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<BR>this.rows=this.TableData.length;<BR>return;<BR>}<BR>function&nbsp;updateField(Field,FieldValue){<BR>var&nbsp;colindex=-1;<BR>var&nbsp;i=0;<BR>&nbsp;if&nbsp;(typeof(Field)&nbsp;==&nbsp;"number"){<BR>&nbsp;&nbsp;&nbsp;colindex=Field;<BR>&nbsp;&nbsp;}<BR>&nbsp;else<BR>&nbsp;{<BR>&nbsp;f&nbsp;or&nbsp;(i=0;i&lt;this.cols&nbsp;&amp;&amp;&nbsp;this.rowindex&lt;this.rows&nbsp;;i++){<BR>&nbsp;&nbsp;&nbsp;if&nbsp;(this.TableData[0][i]==Field){<BR>&nbsp;&nbsp;&nbsp;colindex=i;<BR>&nbsp;&nbsp;&nbsp;break;<BR>&nbsp;&nbsp;&nbsp;}&nbsp;&nbsp;<BR>&nbsp;&nbsp;}<BR>&nbsp;}<BR>&nbsp;if&nbsp;(colindex!=-1)&nbsp;{<BR>&nbsp;&nbsp;this.TableData[this.rowindex][colindex]=FieldValue;<BR>&nbsp;&nbsp;}<BR><BR><BR>}<BR>function&nbsp;movefirst(){<BR>this.rowindex=0;<BR>}<BR>function&nbsp;movelast(){<BR>this.rowindex=this.rows-1;<BR>}<BR>function&nbsp;String.prototype.Trim()&nbsp;{return&nbsp;this.replace(/(^\s*)|(\s*$)/g,"");}<BR>GetTableData.prototype.MoveNext&nbsp;=&nbsp;movenext;<BR>GetTableData.prototype.GetFieldData&nbsp;=&nbsp;getfielddata;<BR>GetTableData.prototype.S&nbsp;ort_asc&nbsp;=&nbsp;s&nbsp;ort_asc;<BR>GetTableData.prototype.S&nbsp;ort_desc&nbsp;=&nbsp;s&nbsp;ort_desc;<BR>GetTableData.prototype.GetData&nbsp;=&nbsp;getData;<BR>GetTableData.prototype.Delete&nbsp;=&nbsp;DeletE;<BR>GetTableData.prototype.UpdateField&nbsp;=&nbsp;updateField;<BR>GetTableData.prototype.MoveFirst&nbsp;=&nbsp;movefirst;<BR><BR>具体的例子：http://202.119.73.208/NetEAn/com/test/jsprint.htm<BR><BR>在每个文本框的onblur事件中调用校验代码,并且每个文本框中onKeyDown事件中写一个enter转tab函数<BR><BR>//回车键换为tab<BR>function&nbsp;enterToTab()<BR>{<BR>&nbsp;&nbsp;&nbsp;&nbsp;if(event.srcElement.type&nbsp;!=&nbsp;'button'&nbsp;&amp;&amp;&nbsp;event.srcElement.type&nbsp;!=&nbsp;'textarea'<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&amp;&amp;&nbsp;event.keyCode&nbsp;==&nbsp;13)<BR>&nbsp;&nbsp;&nbsp;&nbsp;{<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;event.keyCode&nbsp;=&nbsp;9;<BR>&nbsp;&nbsp;&nbsp;&nbsp;}<BR>}<BR><BR>有时候还需要自由编辑表格---<BR>给大家一个自由编辑表格的小例子,写的有点乱,呵呵:）<BR><BR>//===============================start================================<BR><BR><BR>&lt;HTML&gt;<BR>&lt;HEAD&gt;<BR>&lt;META&nbsp;http-equiv="Content-Type"&nbsp;content="text/html;&nbsp;charset=gb2312"&gt;<BR>&lt;TITLE&gt;测试修改表格&lt;/TITLE&gt;<BR>&lt;STYLE&gt;<BR>/*提示层的样式*/<BR>div<BR>{<BR>&nbsp;&nbsp;BORDER-RIGHT:&nbsp;#80c144&nbsp;1px&nbsp;solid;<BR>&nbsp;&nbsp;BORDER-TOP:&nbsp;#80c144&nbsp;1px&nbsp;solid;<BR>&nbsp;&nbsp;VISIBILITY:&nbsp;hidden;<BR>&nbsp;&nbsp;BORDER-LEFT:&nbsp;#80c144&nbsp;1px&nbsp;solid;<BR>&nbsp;&nbsp;CURSOR:&nbsp;default;<BR>&nbsp;&nbsp;LINE-HEIGHT:&nbsp;20px;<BR>&nbsp;&nbsp;BORDER-BOTTOM:&nbsp;#80c144&nbsp;1px&nbsp;solid;<BR>&nbsp;&nbsp;FONT-FAMILY:&nbsp;宋体;<BR>&nbsp;&nbsp;font-size:12px;<BR>&nbsp;&nbsp;POSITION:&nbsp;absolute;<BR>&nbsp;&nbsp;BACKGROUND-COLOR:&nbsp;#f6f6f6;<BR>&nbsp;&nbsp;TOP:30px;<BR>&nbsp;&nbsp;LEFT:30px;<BR>}<BR>/*tr的样式*/<BR>tr<BR>{<BR>&nbsp;&nbsp;&nbsp;&nbsp;font-family:&nbsp;"宋体";<BR>&nbsp;&nbsp;&nbsp;&nbsp;col&nbsp;or:&nbsp;#000000;<BR>&nbsp;&nbsp;&nbsp;&nbsp;background-col&nbsp;or:&nbsp;#C1DBF5;<BR>&nbsp;&nbsp;&nbsp;&nbsp;font-size:&nbsp;12px<BR>}<BR>/*table脚注样式*/<BR>.TrFoot<BR>{<BR>&nbsp;&nbsp;&nbsp;&nbsp;FONT-SIZE:&nbsp;12px;<BR>&nbsp;&nbsp;&nbsp;&nbsp;font-family:"宋体",&nbsp;"Verdana",&nbsp;"Arial";<BR>&nbsp;&nbsp;&nbsp;&nbsp;BACKGROUND-COLOR:&nbsp;#6699CC;<BR>&nbsp;&nbsp;&nbsp;&nbsp;COLOR:#FFFFFF;<BR>&nbsp;&nbsp;&nbsp;&nbsp;height:&nbsp;25;<BR>}<BR>/*trhead属性*/<BR>.TrHead<BR>{<BR>&nbsp;&nbsp;&nbsp;&nbsp;FONT-SIZE:&nbsp;13px;<BR>&nbsp;&nbsp;&nbsp;&nbsp;font-family:"宋体",&nbsp;"Verdana",&nbsp;"Arial";<BR>&nbsp;&nbsp;&nbsp;&nbsp;BACKGROUND-COLOR:&nbsp;#77AADD;<BR>&nbsp;&nbsp;&nbsp;&nbsp;COLOR:#FFFFFF;<BR>&nbsp;&nbsp;&nbsp;&nbsp;height:&nbsp;25;<BR>}<BR>/*文本框样式*/<BR>INPUT<BR>{<BR>&nbsp;&nbsp;&nbsp;&nbsp;BORDER-COLOR:&nbsp;#AACEF7&nbsp;#AACEF7&nbsp;#AACEF7&nbsp;#AACEF7;<BR>&nbsp;&nbsp;&nbsp;&nbsp;BORDER-RIGHT:&nbsp;1px&nbsp;solid;<BR>&nbsp;&nbsp;&nbsp;&nbsp;BORDER-TOP:&nbsp;1px&nbsp;solid;<BR>&nbsp;&nbsp;&nbsp;&nbsp;BORDER-LEFT:&nbsp;1px&nbsp;solid;<BR>&nbsp;&nbsp;&nbsp;&nbsp;BORDER-BOTTOM:&nbsp;1px&nbsp;solid;<BR>&nbsp;&nbsp;&nbsp;&nbsp;FONT-SIZE:&nbsp;12px;<BR>&nbsp;&nbsp;&nbsp;&nbsp;FONT-FAMILY:&nbsp;"宋体","Verdana";<BR>&nbsp;&nbsp;&nbsp;&nbsp;col&nbsp;or:&nbsp;#000000;<BR>&nbsp;&nbsp;&nbsp;&nbsp;BACKGROUND-COLOR:&nbsp;#E9EFF5;<BR>}<BR>/*button样式*/<BR>button<BR>{<BR>&nbsp;&nbsp;&nbsp;&nbsp;BORDER-COLOR:&nbsp;#AACEF7&nbsp;#AACEF7&nbsp;#AACEF7&nbsp;#AACEF7;<BR>&nbsp;&nbsp;&nbsp;&nbsp;BACKGROUND-COLOR:&nbsp;#D5E4F3;<BR>&nbsp;&nbsp;&nbsp;&nbsp;CURSOR:&nbsp;hand;<BR>&nbsp;&nbsp;&nbsp;&nbsp;FONT-SIZE:12px;<BR>&nbsp;&nbsp;&nbsp;&nbsp;BORDER-RIGHT:&nbsp;1px&nbsp;solid;<BR>&nbsp;&nbsp;&nbsp;&nbsp;BORDER-TOP:&nbsp;1px&nbsp;solid;<BR>&nbsp;&nbsp;&nbsp;&nbsp;BORDER-LEFT:&nbsp;1px&nbsp;solid;<BR>&nbsp;&nbsp;&nbsp;&nbsp;BORDER-BOTTOM:&nbsp;1px&nbsp;solid;<BR>&nbsp;&nbsp;&nbsp;&nbsp;COLOR:&nbsp;#000000;<BR>}<BR>&lt;/STYLE&gt;<BR>&lt;/HEAD&gt;<BR>&lt;BODY&gt;<BR>&lt;SCRIPT&nbsp;language&nbsp;=&nbsp;"java&nbsp;script"&gt;<BR>&lt;!--全局变量<BR>//标志位,值为false代表未打开一个编辑框,值为true为已经打开一个编辑框开始编辑<BR>var&nbsp;editer_table_cell_tag&nbsp;=&nbsp;false;<BR>//开启编辑功能标志,值为true时为允许编辑<BR>var&nbsp;run_edit_flag&nbsp;=&nbsp;false;<BR>//--&gt;<BR>&lt;/SCRIPT&gt;<BR><BR>&lt;SCRIPT&nbsp;language&nbsp;=&nbsp;"java&nbsp;script"&gt;<BR>&lt;!--<BR>/**<BR>&nbsp;*&nbsp;编辑表格函数<BR>&nbsp;*&nbsp;单击某个单元格可以对里面的内容进行自由编辑<BR>&nbsp;*&nbsp;@para&nbsp;tableID&nbsp;为要编辑的table的id<BR>&nbsp;*&nbsp;@para&nbsp;noEdiID&nbsp;为不要编辑的td的ID,比如说table的标题<BR>&nbsp;*&nbsp;可以写为&lt;TD&nbsp;id="no_editer"&gt;自由编辑表格&lt;/TD&gt;<BR>&nbsp;*&nbsp;此时该td不可编辑<BR>&nbsp;*/<BR>function&nbsp;editerTableCell(tableId,noEdiId)<BR>{<BR>&nbsp;var&nbsp;tdObject&nbsp;=&nbsp;event.srcElement;<BR>&nbsp;var&nbsp;tObject&nbsp;=&nbsp;((tdObject.parentNode).parentNode).parentNode;<BR>&nbsp;if(tObject.id&nbsp;==&nbsp;tableId&nbsp;&amp;&amp;tdObject.id&nbsp;!=&nbsp;noEdiId&amp;&amp;editer_table_cell_tag&nbsp;==&nbsp;false&nbsp;&amp;&amp;&nbsp;run_edit_flag&nbsp;==&nbsp;true)<BR>&nbsp;{<BR>&nbsp;&nbsp;tdObject.innerHTML&nbsp;=&nbsp;"&lt;input&nbsp;type=text&nbsp;id=edit_table_txt&nbsp;name=edit_table_txt&nbsp;value="+tdObject.innerText+"&nbsp;size='15'&nbsp;onKeyDown='enterToTab()'&gt;&nbsp;&nbsp;&lt;input&nbsp;type=button&nbsp;value='&nbsp;确定&nbsp;'&nbsp;onclick='certainEdit()'&gt;";<BR>&nbsp;&nbsp;edit_table_txt.focus();<BR>&nbsp;&nbsp;edit_table_txt.select();<BR>&nbsp;&nbsp;editer_table_cell_tag&nbsp;=&nbsp;true;<BR>&nbsp;&nbsp;//修改按钮提示信息<BR>&nbsp;&nbsp;editTip.innerText&nbsp;=&nbsp;"请先点确定按钮确认修改!";&nbsp;&nbsp;<BR>&nbsp;}<BR>&nbsp;else<BR>&nbsp;{<BR>&nbsp;&nbsp;return&nbsp;false;<BR>&nbsp;}<BR>}<BR><BR>/**<BR>&nbsp;*&nbsp;确定修改<BR>&nbsp;*/<BR>function&nbsp;certainEdit()<BR>{<BR>&nbsp;var&nbsp;bObject&nbsp;=&nbsp;event.srcElement;<BR>&nbsp;var&nbsp;tdObject&nbsp;=&nbsp;bObject.parentNode;&nbsp;<BR>&nbsp;var&nbsp;txtObject&nbsp;=&nbsp;tdObject.firstChild;<BR>&nbsp;tdObject.innerHTML&nbsp;=&nbsp;txtObject.value;<BR>&nbsp;//代表编辑框已经关闭<BR>&nbsp;editer_table_cell_tag&nbsp;=&nbsp;false;<BR>&nbsp;//修改按钮提示信息<BR>&nbsp;editTip.innerText&nbsp;=&nbsp;"请单击某个单元格进行编辑!";<BR>}<BR><BR>function&nbsp;enterToTab()<BR>{<BR>&nbsp;&nbsp;&nbsp;&nbsp;if(event.srcElement.type&nbsp;!=&nbsp;'button'&nbsp;&amp;&amp;&nbsp;event.srcElement.type&nbsp;!=&nbsp;'textarea'<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&amp;&amp;&nbsp;event.keyCode&nbsp;==&nbsp;13)<BR>&nbsp;&nbsp;&nbsp;&nbsp;{<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;event.keyCode&nbsp;=&nbsp;9;<BR>&nbsp;&nbsp;&nbsp;&nbsp;}<BR>}<BR><BR>/**<BR>&nbsp;*&nbsp;控制是否编辑<BR>&nbsp;*/<BR>function&nbsp;editStart()<BR>{<BR>&nbsp;if(event.srcElement.value&nbsp;==&nbsp;"开始编辑")<BR>&nbsp;{<BR>&nbsp;&nbsp;event.srcElement.value&nbsp;=&nbsp;"编辑完成";<BR>&nbsp;&nbsp;run_edit_flag&nbsp;=&nbsp;true;<BR>&nbsp;}<BR>&nbsp;else<BR>&nbsp;{<BR>&nbsp;&nbsp;//如果当前没有编辑框,则编辑成功,否则,无法提交<BR>&nbsp;&nbsp;//必须按确定按钮后才能正常提交<BR>&nbsp;&nbsp;if(editer_table_cell_tag&nbsp;==&nbsp;false)<BR>&nbsp;&nbsp;{<BR>&nbsp;&nbsp;&nbsp;alert("编辑成功结束!");<BR>&nbsp;&nbsp;&nbsp;event.srcElement.value&nbsp;=&nbsp;"开始编辑";<BR>&nbsp;&nbsp;&nbsp;run_edit_flag&nbsp;=&nbsp;false;<BR>&nbsp;&nbsp;}<BR>&nbsp;}<BR>}<BR><BR>/**<BR>&nbsp;*&nbsp;根据不同的按钮提供不同的提示信息<BR>&nbsp;*/<BR>function&nbsp;showTip()<BR>{<BR>&nbsp;if(event.srcElement.value&nbsp;==&nbsp;"编辑完成")<BR>&nbsp;{<BR>&nbsp;&nbsp;editTip.style.top&nbsp;=&nbsp;event.y&nbsp;+&nbsp;15;<BR>&nbsp;&nbsp;editTip.style.left&nbsp;=&nbsp;event.x&nbsp;+&nbsp;12;<BR>&nbsp;&nbsp;editTip.style.visibility&nbsp;=&nbsp;"visible";&nbsp;&nbsp;<BR>&nbsp;}<BR>&nbsp;else<BR>&nbsp;{<BR>&nbsp;&nbsp;editTip.style.visibility&nbsp;=&nbsp;"hidden";&nbsp;&nbsp;&nbsp;<BR>&nbsp;}&nbsp;<BR>}<BR>--&gt;<BR>&lt;/SCRIPT&gt;<BR>&lt;TABLE&nbsp;id="editer_table"&nbsp;width="100%"&nbsp;align="center"&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;onclick="editerTableCell('editer_table','no_editer')"&gt;&nbsp;&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&lt;TR&nbsp;class="TrHead"&gt;<BR>&nbsp;&nbsp;&lt;TD&nbsp;colspan="3"&nbsp;align="center"&nbsp;id="no_editer"&gt;自由编辑表格&lt;/TD&gt;&nbsp;&nbsp;<BR>&nbsp;&lt;/TR&gt;<BR>&nbsp;&lt;TR&gt;<BR>&nbsp;&nbsp;&lt;TD&nbsp;width="33%"&gt;单击开始编辑按钮,然后点击各单元格编辑&lt;/TD&gt;<BR>&nbsp;&nbsp;&lt;TD&nbsp;width="33%"&gt;2&lt;/TD&gt;<BR>&nbsp;&nbsp;&lt;TD&nbsp;width="33%"&gt;3&lt;/TD&gt;<BR>&nbsp;&lt;/TR&gt;<BR>&nbsp;&lt;TR&gt;<BR>&nbsp;&nbsp;&lt;TD&nbsp;width="33%"&gt;4&lt;/TD&gt;<BR>&nbsp;&nbsp;&lt;TD&nbsp;width="33%"&gt;5&lt;/TD&gt;<BR>&nbsp;&nbsp;&lt;TD&nbsp;width="33%"&gt;6&lt;/TD&gt;<BR>&nbsp;&lt;/TR&gt;<BR>&nbsp;&lt;TR&gt;<BR>&nbsp;&nbsp;&lt;TD&nbsp;width="33%"&gt;one&lt;/TD&gt;<BR>&nbsp;&nbsp;&lt;TD&nbsp;width="33%"&gt;two&lt;/TD&gt;<BR>&nbsp;&nbsp;&lt;TD&nbsp;width="33%"&gt;three&lt;/TD&gt;<BR>&nbsp;&lt;/TR&gt;<BR>&nbsp;&lt;TR&gt;<BR>&nbsp;&nbsp;&lt;TD&nbsp;width="33%"&gt;four&lt;/TD&gt;<BR>&nbsp;&nbsp;&lt;TD&nbsp;width="33%"&gt;five&lt;/TD&gt;<BR>&nbsp;&nbsp;&lt;TD&nbsp;width="33%"&gt;six&lt;/TD&gt;<BR>&nbsp;&lt;/TR&gt;&nbsp;&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&lt;TR&nbsp;class="TrFoot"&gt;<BR>&nbsp;&nbsp;&lt;TD&nbsp;colspan="3"&nbsp;align="center"&nbsp;id="no_editer"&gt;<BR>&nbsp;&nbsp;&nbsp;&lt;INPUT&nbsp;type="button"&nbsp;class="bt"&nbsp;value="开始编辑"&nbsp;onClick="editStart()"&nbsp;onMouseOver="showTip()"&nbsp;onMouseMove="showTip()"&nbsp;onMouseOut="editTip.style.visibility&nbsp;=&nbsp;'hidden';"&gt;<BR>&nbsp;&nbsp;&lt;/TD&gt;<BR>&nbsp;&lt;/TR&gt;&nbsp;<BR>&lt;/TABLE&gt;<BR>&lt;/BODY&gt;<BR>&lt;DIV&nbsp;id="editTip"&gt;请单击某个单元格进行编辑!&lt;/DIV&gt;&nbsp;<BR>&lt;/HTML&gt;</SPAN> <BR><img src ="http://www.blogjava.net/guanlong/aggbug/3356.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/guanlong/" target="_blank">Stephen</a> 2005-04-16 14:35 <a href="http://www.blogjava.net/guanlong/archive/2005/04/16/3356.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>正则表达式优先级 [资料]</title><link>http://www.blogjava.net/guanlong/archive/2005/04/16/3352.html</link><dc:creator>Stephen</dc:creator><author>Stephen</author><pubDate>Sat, 16 Apr 2005 06:12:00 GMT</pubDate><guid>http://www.blogjava.net/guanlong/archive/2005/04/16/3352.html</guid><wfw:comment>http://www.blogjava.net/guanlong/comments/3352.html</wfw:comment><comments>http://www.blogjava.net/guanlong/archive/2005/04/16/3352.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/guanlong/comments/commentRss/3352.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/guanlong/services/trackbacks/3352.html</trackback:ping><description><![CDATA[<P>正则表达式从左到右进行计算，并遵循优先级顺序，这与算术表达式非常类似。</P>
<P>下表从最高到最低说明了各种正则表达式运算符的优先级顺序：</P>
<DIV class=tablediv>
<TABLE class=dtTABLE cellSpacing=0>
<TBODY>
<TR vAlign=top>
<TH width="40%">运算符</TH>
<TH width="60%">说明</TH></TR>
<TR vAlign=top>
<TD width="40%">\</TD>
<TD width="60%">转义符</TD></TR>
<TR vAlign=top>
<TD width="40%">(), (?:), (?=), []</TD>
<TD width="60%">括号和中括号</TD></TR>
<TR vAlign=top>
<TD width="40%">*, +, ?, {n}, {n,}, {n,m}</TD>
<TD width="60%">限定符</TD></TR>
<TR vAlign=top>
<TD width="40%">^, $, \<I>anymetacharacter, anycharacter</I></TD>
<TD width="60%">定位点和序列</TD></TR>
<TR vAlign=top>
<TD width="40%">|</TD>
<TD width="60%">替换</TD></TR></TBODY></TABLE></DIV>
<P>字符的优先级比替换运算符高，替换运算符允许“m|food”与“m”或“food”匹配。若要匹配“mood”或“food”，请使用括号创建子表达式，从而产生“(m|f)ood”。</P><img src ="http://www.blogjava.net/guanlong/aggbug/3352.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/guanlong/" target="_blank">Stephen</a> 2005-04-16 14:12 <a href="http://www.blogjava.net/guanlong/archive/2005/04/16/3352.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>正则表达式语法 [资料]</title><link>http://www.blogjava.net/guanlong/archive/2005/04/16/3351.html</link><dc:creator>Stephen</dc:creator><author>Stephen</author><pubDate>Sat, 16 Apr 2005 06:11:00 GMT</pubDate><guid>http://www.blogjava.net/guanlong/archive/2005/04/16/3351.html</guid><wfw:comment>http://www.blogjava.net/guanlong/comments/3351.html</wfw:comment><comments>http://www.blogjava.net/guanlong/archive/2005/04/16/3351.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/guanlong/comments/commentRss/3351.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/guanlong/services/trackbacks/3351.html</trackback:ping><description><![CDATA[<TABLE class=dtTABLE cellSpacing=0>
<TBODY>
<TR vAlign=top>
<TH width="16%">字符</TH>
<TH width="84%">说明</TH></TR>
<TR vAlign=top>
<TD width="16%">\</TD>
<TD width="84%">将下一字符标记为特殊字符、文本、反向引用或八进制转义符。例如，“n”匹配字符“n”。“\n”匹配换行符。序列“\\”匹配“\”，“\(”匹配“(”。</TD></TR>
<TR vAlign=top>
<TD width="16%">^</TD>
<TD width="84%">匹配输入字符串开始的位置。如果设置了 <B>RegExp</B> 对象的 <B>Multiline</B> 属性，^ 还会与“\n”或“\r”之后的位置匹配。</TD></TR>
<TR vAlign=top>
<TD width="16%">$</TD>
<TD width="84%">匹配输入字符串结尾的位置。如果设置了 <B>RegExp</B> 对象的 <B>Multiline</B> 属性，$ 还会与“\n”或“\r”之前的位置匹配。</TD></TR>
<TR vAlign=top>
<TD width="16%">*</TD>
<TD width="84%">零次或多次匹配前面的字符或子表达式。例如，zo* 匹配“z”和“zoo”。* 等效于 {0,}。</TD></TR>
<TR vAlign=top>
<TD width="16%">+</TD>
<TD width="84%">一次或多次匹配前面的字符或子表达式。例如，“zo+”与“zo”和“zoo”匹配，但与“z”不匹配。+ 等效于 {1,}。</TD></TR>
<TR vAlign=top>
<TD width="16%">?</TD>
<TD width="84%">零次或一次匹配前面的字符或子表达式。例如，“do(es)?”匹配“do”或“does”中的“do”。? 等效于 {0,1}。</TD></TR>
<TR vAlign=top>
<TD width="16%">{<I>n</I>}</TD>
<TD width="84%"><I>n </I>是非负整数。正好匹配 <I>n</I> 次。例如，“o{2}”与“Bob”中的“o”不匹配，但与“food”中的两个“o”匹配。</TD></TR>
<TR vAlign=top>
<TD width="16%">{<I>n</I>,}</TD>
<TD width="84%"><I>n </I>是非负整数。至少匹配 <I>n </I>次。例如，“o{2,}”不匹配“Bob”中的“o”，而匹配“foooood”中的所有 o。'o{1,}' 等效于 'o+'。'o{0,}' 等效于 'o*'。</TD></TR>
<TR vAlign=top>
<TD width="16%">{<I>n</I>,<I>m</I>}</TD>
<TD width="84%"><I>m</I> 和 <I>n</I> 是非负整数，其中 <I>n</I> &lt;= <I>m</I>。至少匹配 <I>n</I> 次，至多匹配 <I>m</I> 次。例如，“o{1,3}”匹配“fooooood”中的头三个 o。'o{0,1}' 等效于 'o?'。注意：您不能将空格插入逗号和数字之间。</TD></TR>
<TR vAlign=top>
<TD width="16%">?</TD>
<TD width="84%">当此字符紧随任何其他限定符（*、+、?、{<I>n</I>}、{<I>n</I>,}、{<I>n</I>,<I>m</I>}）之后时，匹配模式是“非贪心的”。“非贪心的”模式匹配搜索到的、尽可能短的字符串，而默认的“贪心的”模式匹配搜索到的、尽可能长的字符串。例如，在字符串“oooo”中，“o+?”只匹配单个“o”，而“o+”匹配所有“o”。</TD></TR>
<TR vAlign=top>
<TD width="16%">.</TD>
<TD width="84%">匹配除“\n”之外的任何单个字符。若要匹配包括“\n”在内的任意字符，请使用诸如“[\s\S]”之类的模式。</TD></TR>
<TR vAlign=top>
<TD width="16%">(<I>pattern</I>)</TD>
<TD width="84%">匹配 <I>pattern</I> 并捕获该匹配的子表达式。可以使用 <B>$0</B>...<B>$9</B> 属性从结果“匹配”集合中检索捕获的匹配。若要匹配括号字符 ( )，请使用“\(”或者“\)”。</TD></TR>
<TR vAlign=top>
<TD width="16%">(?:<I>pattern</I>)</TD>
<TD width="84%">匹配 <I>pattern</I> 但不捕获该匹配的子表达式，即它是一个非捕获匹配，不存储供以后使用的匹配。这对于用“或”字符 (|) 组合模式部件的情况很有用。例如，与“industry|industries”相比，“industr(?:y| ies)”是一个更加经济的表达式。</TD></TR>
<TR vAlign=top>
<TD width="16%">(?=<I>pattern</I>)</TD>
<TD width="84%">执行正向预测先行搜索的子表达式，该表达式匹配处于匹配 <I>pattern</I> 的字符串的起始点的字符串。它是一个非捕获匹配，即不能捕获供以后使用的匹配。例如，“Windows (?=95| 98| NT| 2000)”与“Windows 2000”中的“Windows”匹配，但不与“Windows 3.1”中的“Windows”匹配。预测先行不占用字符，即发生匹配后，下一匹配的搜索紧随上一匹配之后，而不是在组成预测先行的字符后。</TD></TR>
<TR vAlign=top>
<TD width="16%">(?!<I>pattern</I>)</TD>
<TD width="84%">执行反向预测先行搜索的子表达式，该表达式匹配不处于匹配 <I>pattern</I> 的字符串的起始点的搜索字符串。它是一个非捕获匹配，即不能捕获供以后使用的匹配。例如，“Windows (?!95| 98| NT| 2000)”与“Windows 3.1”中的“Windows”匹配，但不与“Windows 2000”中的“Windows”匹配。预测先行不占用字符，即发生匹配后，下一匹配的搜索紧随上一匹配之后，而不是在组成预测先行的字符后。</TD></TR>
<TR vAlign=top>
<TD width="16%"><I>x</I>| <I>y</I></TD>
<TD width="84%">与 <I>x</I> 或 <I>y </I>匹配。例如，“z| food”与“z”或“food”匹配。“(z| f)ood”与“zood”或“food”匹配。 </TD></TR>
<TR vAlign=top>
<TD width="16%">[<I>xyz</I>]</TD>
<TD width="84%">字符集。匹配包含的任一字符。例如，“[abc]”匹配“plain”中的“a”。 </TD></TR>
<TR vAlign=top>
<TD width="16%">[^<I>xyz</I>]</TD>
<TD width="84%">反向字符集。匹配未包含的任何字符。例如，“[^abc]”匹配“plain”中的“p”。 </TD></TR>
<TR vAlign=top>
<TD width="16%">[<I>a-z</I>]</TD>
<TD width="84%">字符范围。匹配指定范围内的任何字符。例如，“[a-z]”匹配“a”到“z”范围内的任何小写字母。 </TD></TR>
<TR vAlign=top>
<TD width="16%">[^<I>a-z</I>]</TD>
<TD width="84%">反向范围字符。匹配不在指定的范围内的任何字符。例如，“[^a-z]”匹配任何不在“a”到“z”范围内的任何字符。 </TD></TR>
<TR vAlign=top>
<TD width="16%">\b</TD>
<TD width="84%">匹配一个字边界，即字与空格间的位置。例如，“er\b”匹配“never”中的“er”，但不匹配“verb”中的“er”。 </TD></TR>
<TR vAlign=top>
<TD width="16%">\B</TD>
<TD width="84%">非字边界匹配。“er\B”匹配“verb”中的“er”，但不匹配“never”中的“er”。 </TD></TR>
<TR vAlign=top>
<TD width="16%">\c<I>x</I></TD>
<TD width="84%">匹配由 <I>x</I> 指示的控制字符。例如，\cM 匹配一个 Control-M 或回车符。<I>x</I> 的值必须在 A-Z 或 a-z 之间。如果不是这样，则假定 c 就是“c”字符本身。 </TD></TR>
<TR vAlign=top>
<TD width="16%">\d</TD>
<TD width="84%">数字字符匹配。等效于 [0-9]。 </TD></TR>
<TR vAlign=top>
<TD width="16%">\D</TD>
<TD width="84%">非数字字符匹配。等效于 [^0-9]。 </TD></TR>
<TR vAlign=top>
<TD width="16%">\f</TD>
<TD width="84%">换页符匹配。等效于 \x0c 和 \cL。</TD></TR>
<TR vAlign=top>
<TD width="16%">\n</TD>
<TD width="84%">换行符匹配。等效于 \x0a 和 \cJ。</TD></TR>
<TR vAlign=top>
<TD width="16%">\r</TD>
<TD width="84%">匹配一个回车符。等效于 \x0d 和 \cM。</TD></TR>
<TR vAlign=top>
<TD width="16%">\s</TD>
<TD width="84%">匹配任何空白字符，包括空格、制表符、换页符等。与 [ \f\n\r\t\v] 等效。</TD></TR>
<TR vAlign=top>
<TD width="16%">\S</TD>
<TD width="84%">匹配任何非空白字符。等价于 [^&nbsp;\f\n\r\t\v]。 </TD></TR>
<TR vAlign=top>
<TD width="16%">\t</TD>
<TD width="84%">制表符匹配。与 \x09 和 \cI 等效。</TD></TR>
<TR vAlign=top>
<TD width="16%">\v</TD>
<TD width="84%">垂直制表符匹配。与 \x0b 和 \cK 等效。</TD></TR>
<TR vAlign=top>
<TD width="16%">\w</TD>
<TD width="84%">匹配任何字类字符，包括下划线。与“[A-Za-z0-9_]”等效。 </TD></TR>
<TR vAlign=top>
<TD width="16%">\W</TD>
<TD width="84%">任何非字字符匹配。与“[^A-Za-z0-9_]”等效。 </TD></TR>
<TR vAlign=top>
<TD width="16%">\x<I>n</I></TD>
<TD width="84%">匹配 <I>n</I>，此处的 <I>n</I> 是一个十六进制转义码。十六进制转义码必须正好是两位数长。例如，“\x41”匹配“A”。“\x041”与“\x04”&amp;“1”等效。允许在正则表达式中使用 ASCII 代码。</TD></TR>
<TR vAlign=top>
<TD width="16%">\<I>num</I></TD>
<TD width="84%">匹配 <I>num</I>，此处的 <I>num</I> 是一个正整数。到捕获匹配的反向引用。例如，“(.)\1”匹配两个连续的相同字符。 </TD></TR>
<TR vAlign=top>
<TD width="16%">\n</TD>
<TD width="84%">标识一个八进制转义码或反向引用。如果 \<I>n</I> 前面至少有 <I>n</I> 个捕获子表达式，那么 <I>n</I> 是反向引用。否则，如果 <I>n</I> 是八进制数 (0-7)，那么 <I>n</I> 是八进制转义码。</TD></TR>
<TR vAlign=top>
<TD width="16%">\<I>nm</I></TD>
<TD width="84%">标识一个八进制转义码或反向引用。如果 \<I>nm</I> 前面至少有 <I>nm</I> 个捕获子表达式，那么 <I>nm</I> 是反向引用。如果 \<I>nm</I> 前面至少有 <I>n</I> 个捕获，那么 <I>n</I> 是反向引用，后面跟 <I>m</I>。如果前面的条件均不存在，那么当 <I>n </I>和 <I>m</I> 是八进制数 (0-7) 时，\<I>nm</I> 匹配八进制转义码 <I>nm</I>。</TD></TR>
<TR vAlign=top>
<TD width="16%">\<I>nml</I></TD>
<TD width="84%">当 <I>n</I> 是八进制数 (0-3)，<I>m</I> 和 <I>l</I> 是八进制数 (0-7) 时，匹配八进制转义码 <I>nml</I>。</TD></TR>
<TR vAlign=top>
<TD width="16%">\u<I>n</I></TD>
<TD width="84%">匹配 <I>n</I>，其中 <I>n</I> 是以四位十六进制数表示的 Unicode 字符。例如，\u00A9 匹配版权符号 (©)。</TD></TR></TBODY></TABLE><img src ="http://www.blogjava.net/guanlong/aggbug/3351.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/guanlong/" target="_blank">Stephen</a> 2005-04-16 14:11 <a href="http://www.blogjava.net/guanlong/archive/2005/04/16/3351.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>网页上读取远程xml的数据</title><link>http://www.blogjava.net/guanlong/archive/2005/04/16/3350.html</link><dc:creator>Stephen</dc:creator><author>Stephen</author><pubDate>Sat, 16 Apr 2005 06:03:00 GMT</pubDate><guid>http://www.blogjava.net/guanlong/archive/2005/04/16/3350.html</guid><wfw:comment>http://www.blogjava.net/guanlong/comments/3350.html</wfw:comment><comments>http://www.blogjava.net/guanlong/archive/2005/04/16/3350.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/guanlong/comments/commentRss/3350.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/guanlong/services/trackbacks/3350.html</trackback:ping><description><![CDATA[一个客户提供一个股价的信息，要求放在页面上，显示一些数据，需要从远程获取xml，然后解析写在网页上，开始不会觉得很难，其实蛮简单的，先用javascript写了一个：<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;script language=javascript&gt;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;var xmlDoc = new ActiveXObject("Microsoft.XMLDOM");<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;xmlDoc.async="false";<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;xmlDoc.load("<A href="http://****.com/scripts/****.asp?subcode=C22">http://****.com/scripts/****.asp?subcode=C22</A>");<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;nodes = xmlDoc.documentElement.childNodes;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;var text = xmlDoc.selectSingleNode("//last").text<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;document.write(text);<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;/script&gt;<BR><A href="http://****.com/scripts/****.asp?subcode=C22">http://****.com/scripts/****.asp?subcode=C22</A> ,是客户提供的页面，其实是xml的内容，这里直接调用windows的组件进行读取，然后调用其中一个selectSingleNode的方法，读出last字段的内容；<BR>VBscript也写了一个，其实差不多，不过有一点不同，asp中VB的不能直接读取远程xml的内容，很奇怪，不知道是不是由于VB的限制：<BR><BR>&nbsp;&nbsp;dim XMLMorntekDocument <BR>&nbsp;&nbsp;Set http=Server.CreateObject("Microsoft.XMLHTTP")<BR>&nbsp;&nbsp;http.Open "GET","<A href='http://****com/scripts/******.asp?subcode=C22",False'>http://****com/scripts/******.asp?subcode=C22",False</A><BR>&nbsp;&nbsp;http.send<BR>&nbsp;&nbsp;Set XMLMorntekDocument=Server.CreateObject("Microsoft.XMLDOM")<BR>&nbsp;&nbsp;XMLMorntekDocument.Async=False<BR>&nbsp;&nbsp;XMLMorntekDocument.ValidateOnParse=False<BR>&nbsp;&nbsp;XMLMorntekDocument.Load(http.ResponseXML)<BR>&nbsp;&nbsp;price = XMLMorntekDocument.selectSingleNode("//last").text<BR>&nbsp;&nbsp;response.write price<BR>&nbsp;&nbsp;Set http=Nothing<BR>&nbsp;&nbsp;Set XMLMorntekDocument=Nothing<BR><BR>这里先用XMLHTTP的方法，get到xml文件，然后再解析。<img src ="http://www.blogjava.net/guanlong/aggbug/3350.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/guanlong/" target="_blank">Stephen</a> 2005-04-16 14:03 <a href="http://www.blogjava.net/guanlong/archive/2005/04/16/3350.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>开发WEB站点编程常用的代码[ZT]</title><link>http://www.blogjava.net/guanlong/archive/2005/04/16/3337.html</link><dc:creator>Stephen</dc:creator><author>Stephen</author><pubDate>Sat, 16 Apr 2005 01:01:00 GMT</pubDate><guid>http://www.blogjava.net/guanlong/archive/2005/04/16/3337.html</guid><wfw:comment>http://www.blogjava.net/guanlong/comments/3337.html</wfw:comment><comments>http://www.blogjava.net/guanlong/archive/2005/04/16/3337.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/guanlong/comments/commentRss/3337.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/guanlong/services/trackbacks/3337.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要: 1. ASP与Access数据库连接： dim&nbsp;conn,mdbfile&nbsp; mdbfile=server.mappath("数据库名称.mdb")&nbsp; set&nbsp;conn=server.createobject("adodb.connection")&nbsp; 'conn.open&nbsp;"driver={microsoft&nbsp;ac...&nbsp;&nbsp;<a href='http://www.blogjava.net/guanlong/archive/2005/04/16/3337.html'>阅读全文</a><img src ="http://www.blogjava.net/guanlong/aggbug/3337.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/guanlong/" target="_blank">Stephen</a> 2005-04-16 09:01 <a href="http://www.blogjava.net/guanlong/archive/2005/04/16/3337.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item></channel></rss>