.NET读取QQWry.Dat 纯真版ip数据库格式 数据源

发布于:
Microsoft.Net

可以把网络上比较流行的纯真版ip数据库格式QQwry.Dat作为IP数据源来实现IP地址的查询显示。

/******************************************************************

** File Name:IPScaner.cs

** Create Date:2004-12-27 20:10:28

** Modifier:

** Modify Date:

** Description:to scan the ip location from qqwry.dat

** Version: IPScaner 1.0.0

******************************************************************/

using System;

using System.IO;

using System.Collections;

using System.Text;

using System.Text.RegularExpressions;

namespace PPTech.WebSite.BusinessRules

{

/**//// <summary>

/// to scan the ip location from qqwry.dat

/// </summary> 

日历控件应用.打造个性日历

发布于:
Microsoft.Net

日历控件是.net自带的控件之一,功能强大,在很多项目开发中都有用到,对于blog系统来说更是必不可少。纵是好玉也仍需雕琢,为了使它更美观实用,我们还需要对它进行二次开发。

  新建一个用户控件,把calender控件拉进来。第一步是外观设置,这个根据你的需要,只需对它的相关属性做一些调整即可。下图是调整后的界面

属性设置:

<ASP:calendar id="Calendar1" CellPadding="2" Width="160px" TitleStyle-BackColor="#000000"      

  BorderColor="#aaaaaa"

  DayHeaderStyle-BackColor="#5e715e"

  OtherMonthDayStyle-ForeColor="#cccccc"

  DayNameFormat="Full"

  runat="server"

  TitleStyle-ForeColor="#ffffff"

  NextPrevStyle-ForeColor="#ffffff"

  CellSpacing="1"

  WeekendDayStyle-BackColor="#eeeeee"

  DayHeaderStyle-ForeColor="#ffffff"

  SelectionMode="None"

  TodayDayStyle-BorderColor="#5e715e"

  TodayDayStyle-BorderWidth="1"

  TodayDayStyle-Font-Bold="true"

  TodayDayStyle-ForeColor="#5e715e"

ADO.NET连接数据库讲解

发布于:
Microsoft.Net

ADO.NET提供了Connection来连接数据库,同时也提供了Command对象来查询数据库。同Connection对象一样,Command也有两种:OleDbCommand和SqlCommand.其区别同Connection对象。

  要操纵数据库,必须先使用Connection来连接到数据库,再创建一个Command来查询。有几种创建方式,例:

SqlCommand cmd;

string strCon="server=localhost;database=Northwind;Trusted_Connection=Yes;";

string strqry="sel&#101;ct * from Categories";

SqlConnection con=new SqlConnection(strCon);

con.Open();

1cmd=con.CreateCommand(); //这里使用用Connection对象的CreateCommand方法来创建一个Command对象。

cmd.CommandText=strqry;

// SqlDataReader reader=cmd.ExecuteReader();

2 cmd=new SqlCommand(); //直接使用new 关键字来创建

cmd.CommandText=strqry;

cmd.Connection=con; //设置与数据库的连接

 3cmd=new SqlCommand(strqry,con); //直接在new的时候带两个参数来创建

 执行方式:

(主要有这么几种,cmd.ExecuteReader();cmd.ExecuteNonQuery();cmd.ExecuteScalar();cmd.ExecuteXmlReader();)

 1,ExecuteReader();返回一个SqlDataReader对象或OleDbDataReader对象,这个看你的程序的需要去  做。可以通过这个对象来检查查询结果,它提供了“游水”式的执行方式,即从结果中读取一行之后,移动到另一行,则前一行就无法再用。有一点要注意的是执行之后,要等到手动去调用Read()方法之后,DataReader对象才会移动到结果集的第一行,同时此方法也返回一个Bool值,表明下一行是否可用,返回True则可用,返回False则到达结果集末尾。 

Web.config文件解释

发布于:
Microsoft.Net

一、认识Web.config文件

Web.config文件是一个XML文本文件,它用来储存 ASP.NET Web 应用程序的配置信息(如最常用的设置ASP.NET Web 应用程序的身份验证方式),它可以出现在应用程序的每一个目录中。当你通过VB.NET新建一个Web应用程序后,默认情况下会在根目录自动创建一个默认的

Web.config文件,包括默认的配置设置,所有的子目录都继承它的配置设置。如果你想修改子目录的配置设置,你可以在该子目录下新建一个Web.config文件。它可以提供除从父目录继承的配置信息以外的配置信息,也可以重写或修改父目录中定义的设置。

  在运行时对Web.config文件的修改不需要重启服务就可以生效(注:<processModel> 节例外)。当然Web.config文件是可以扩展的。你可以自定义新配置参数并编写配置节处理程序以对它们进行处理。

  二、web.config配置文件(默认的配置设置)以下所有的代码都应该位于

<configuration>

<system.web>

  和

</system.web>

</configuration>

  之间,出于学习的目的下面的示例都省略了这段XML标记

  1、<authentication> 节

  作用:配置 ASP.NET 身份验证支持(为Windows、Forms、PassPort、None四种)。该元素只能在计算机、站点或应用程序级别声明。<authentication> 元素必需与<authorization> 节配合使用。

  示例:

  以下示例为基于窗体(Forms)的身份验证配置站点,当没有登陆的用户访问需要身份验证的网页,网页自动跳转到登陆网页。

<authentication mode="Forms" >

<forms loginUrl="logon.aspx" name=".FormsAuthCookie"/>

</authentication>

  其中元素loginUrl表示登陆网页的名称,name表示Cookie名称

  2、<authorization> 节

  作用:控制对 URL 资源的客户端访问(如允许匿名用户访问)。此元素可以在任何级别(计算机、站点、应用程序、子目录或页)上声明。必需与<authentication> 节配合使用。

  示例:以下示例禁止匿名用户的访问

<authorization>

 <deny users="?"/>

</authorization>

  注:你可以使用user.identity.name来获取已经过验证的当前的用户名;可以使用

web.Security.FormsAuthentication.RedirectFromLoginPage方法将已验证的用户重定向到用户刚才请求的页面.具体的实例请参考:

  Forms验证 http://www.fanvb.net/websample/dataauth.aspx

  3、<compilation>节

  作用:配置 ASP.NET 使用的所有编译设置。默认的debug属性为“True”.在程序编译完成交付使用之后应将其设为True(Web.config文件中有详细说明,此处省略示例)

  4、<customErrors>

  作用:为 ASP.NET 应用程序提供有关自定义错误信息的信息。它不适用于 XML Web services 中发生的错误。

  示例:当发生错误时,将网页跳转到自定义的错误页面。

<customErrors defaultRedirect="ErrorPage.aspx" mode="RemoteOnly">

</customErrors>

  其中元素defaultRedirect表示自定义的错误网页的名称。mode元素表示:对不在本地 Web 服务器上运行的用户显示自定义(友好的)信息。

  5、<httpRuntime>节

  作用:配置 ASP.NET HTTP 运行库设置。该节可以在计算机、站点、应用程序和子目录级别声明。

  示例:控制用户上传文件最大为4M,最长时间为60秒,最多请求数为100

<httpRuntime maxRequestLength="4096" executionTimeout="60" appRequestQueueLimit="100"/>

  6、 <pages>

  作用:标识特定于页的配置设置(如是否启用会话状态、视图状态,是否检测用户的输入等)。<pages>可以在计算机、站点、应用程序和子目录级别声明。

  示例:不检测用户在浏览器输入的内容中是否存在潜在的危险数据(注:该项默认是检测,如果你使用了不检测,一要对用户的输入进行编码或验证),在从客户端回发页时将检查加密的视图状态,以验证视图状态是否已在客户端被篡改。(注:该项默认是不验证)

<pages buffer="true" enableViewStateMac="true" validateRequest="false"/>

  7、<sessionState>

  作用:为当前应用程序配置会话状态设置(如设置是否启用会话状态,会话状态保存位置)。

  示例:

<sessionState mode="InProc" cookieless="true" timeout="20"/>

</sessionState>

  注:

  mode="InProc"表示:在本地储存会话状态(你也可以选择储存在远程服务器或SAL服务器中或不启用会话状态)

  cookieless="true"表示:如果用户浏览器不支持Cookie时启用会话状态(默认为False)

  timeout="20"表示:会话可以处于空闲状态的分钟数

  8、<trace>

  作用:配置 ASP.NET 跟踪服务,主要用来程序测试判断哪里出错。

  示例:以下为Web.config中的默认配置:

<trace enabled="false" requestLimit="10" pageOutput="false" traceMode="SortByTime" localOnly="true" />

  注:

  enabled="false"表示不启用跟踪;requestLimit="10"表示指定在服务器上存储的跟踪请求的数目

  pageOutput="false"表示只能通过跟踪实用工具访问跟踪输出;

  traceMode="SortByTime"表示以处理跟踪的顺序来显示跟踪信息

  localOnly="true" 表示跟踪查看器 (trace.axd) 只用于宿主 Web 服务器

  三、自定义Web.config文件配置节

  自定义Web.config文件配置节过程分为两步。

  一是在在配置文件顶部 <configSections> 和 </configSections>标记之间声明配置节的名称和处理该节中配置数据的 .NET Framework 类的名称。

  二是在 <configSections> 区域之后为声明的节做实际的配置设置。

  示例:创建一个节存储数据库连接字符串

<configuration>

 <configSections>

 <section name="appSettings" type="System.Configuration.NameValueFileSectionHandler, System, Version=1.0.3300.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"/>

</configSections>

 <appSettings>

  <add key="scon" value="server=a;database=northwind;uid=sa;pwd=123"/>

 </appSettings>

 <system.web>

  ……

 </system.web>

</configuration>

四、访问Web.config文件

  你可以通过使用ConfigurationSettings.AppSettings 静态字符串集合来访问 Web.config 文件示例:获取上面例子中建立的连接字符串。

Dim sconstr As String = ConfigurationSettings.AppSettings("SconStr")

Dim scon = New SqlConnection(sconstr)

定位你的网站CI形象

发布于:
其他(计算机)

所谓CI,是借用的广告术语。(CI是英文corporate identity的缩写),意思是通过视觉来统一企业的形象。现实生活中的CI策划比比皆是,杰出的例子如:可口可乐公司,全球统一的标志,色彩和产品包装,给我们的印象极为深刻。更多的例子如SONY,三菱,麦当劳等等。

  一个杰出的网站,和实体公司一样,也需要整体的形象包装和设计。准确的,有创意的CI设计,对网站的宣传推广有事半功倍的效果。在您的网站主题和名称定下来之后,需要思考的就是网站的CI形象。

  有网友要问了:我不是学广告专业的,CI对我来说可能太难了吧 不用担心,阿捷自己也没有学过设计专业哦。大家只要参考我的一些具体做法和经验,很容易将自己网站的CI搞定

  1.设计网站的标志(logo).首先你需要设计制作一个网站的标志(logo)。就如同商标一样,logo是你站点特色和内涵的集中体现,看见logo就让大家联想起你的站点。注意:这里的logo不是指88X31的小图标banner,而是网站的标志。

  标志可以是中文,英文字母,可以是符号,图案,可以是动物或者人物等等。比如:soim是用soim的英文作为标志,新浪用字母sina+眼睛作为标志。标志的设计创意来自你网站的名称和内容。

  (1).网站有代表性的人物,动物,花草,可以用它们作为设计的蓝本,加以卡通化和艺术化,例如迪斯尼的米老鼠,搜狐的卡通狐狸,鲨威体坛的篮球鲨鱼。

  (2).网站有专业性的,可以以本专业有代表的物品作为标志。比如中国银行的铜板标志,奔驰汽车的方向盘标志。

  (3).最常用和最简单的方式是用自己网站的英文名称作标志。采用不同的字体,字母的变形,字母的组合可以很容易制作好自己的标志。 

基本牛逼,小有瑕疵——评网易2005年度策划

发布于:
其他(计算机)

一个50年代人民公社时期常见的画面,女社员抱着一只大公鸡,灿烂笑脸对灿烂鲜花。这个简洁传神的水彩画面,是这个题为《2005幸福生活》的网易2005年度策划的主要界面(http://news.163.com/2005/)。策划内容共分四大部类:幸福生活2005;砖家语录;2005年度大片;期末考试。

这个年度策划,是我看过的2005年度最棒的年度总结,无论是在网络媒体还是在传统媒体之中,都堪称出类拔萃。相形之下,南周之类“愿中国更有力,再前行”的年终献辞,自我重复了无新意之余,更让人窥出报业普遍不景气的日暮途穷。这个策划所凸现出来的话语形态和整体效果,正是我现在所服务的一个电视栏目所���望达到却永难达到的,由此也反证出当下电视媒体的话语空间是何等可怜。

这个年度策划,也使门户网站的信息再加工能力得到了极大程度的体现,其糅合了强烈的反讽、超级搞笑的无厘头风格和卓越的想象力的创意,让我在MSN上四处打听出自网易哪位高人的大脑。比如,期末考试部分,这样的看图作文(http://news.163.com/2005/gk.html),相信是花费了相当心血,才能既把握好精确打击,也把握好精确尺度的。

还有一个问题,给我极大震撼的是这个年度策划的勇气,虽然几个门户网站里,网易显然是最具勇气的。但这个策划里的一些内容,比如上述列举的两个,恰恰都是广东境内相当敏感的点。我不知道,是我过于担心,还是这个年度策划再一次拓展了网络新闻的空间?老莫说别高兴太早,他早已悬下赌注,预言这个策划将面临和当年赵牧鼓捣的搜狐星空同样的命运。

  夸完了,还是要挑毛病。

  微观方面,不准确或者欠妥的地方还是所在多有。

  第二部分砖家语录里,第5位列入茅于轼“抵抗日货是很愚蠢的办法”,完全不应该;第8位列入任志强的房产暴利说,值得商榷,诚如我的朋友黄章晋所言,任说的其实是句犯了众怒的大实话;同样,关于矿难,也被列入的何柞庥和七台河煤矿领导,也值得分析其具体语境;

第三部分年度大片里,第7位将漂洋过海的大马新娘列为“最佳女配角”,也是完全不应该,不仅是调侃太过的问题,也是极易招致整肃借口的不智之举。

宏观方面,四个部分多有交叉,内容重复,虽解读角度或许各不相同,但容易产生阅读疲劳,也不利概念的清晰流畅传播。同样容易造成阅读疲劳,缺少整体感的是每个部分的十几项内容,界面设置采用的是分页制,当然简洁倒是简洁了。

  

总结一下,微观的问题,估计主要是出在对新闻背景知识的把握不够,辨析能力欠缺,调侃之余,少了那么点不可或缺的悲悯情怀;宏观的问题,当然是总策划通盘安排方面筹划时的估计不足,整合时的力所不逮。

毫无疑问,这个策划背后,肯定是一只年轻的团队。它的牛逼,在于它的年轻。它的瑕疵,也在于它的年轻。

批处理文件的写法

发布于:
服务器技术

出处:中国DOS联盟之联合DOS论坛

编者:这个教程和别不一样的地方在于willsort编注那里的内容,是作者多年来的心得.

批处理的介绍扩展名是bat(在nt/2000/xp/2003下也可以是cmd)的文件就是批处理文件。

==== willsort 编注 =======================================

.bat是dos下的批处理文件

.cmd是nt内核命令行环境的另一种批处理文件

从更广义的角度来看,unix的shell脚本以及其它操作系统甚至应用程序中由外壳进行解释执行的文本,都具有与批处理文件十分相似的作用,而且同样是由专用解释器以行为单位解释执行,这种文本形式更通用的称谓是脚本语言。所以从某个程度分析,batch, unix shell, awk, basic, perl 等脚本语言都是一样的,只不过应用的范围和解释的平台各有不同而已。甚至有些应用程序仍然沿用批处理这一称呼,而其内容和扩展名与dos的批处理却又完全不同。 

SQLserver常用函数

发布于:
Script

1,统计函数 avg, count, max, min, sum
多数聚会不统计值为null的行。可以与distinct一起使用去掉重复的行。可以与group by 来分组

2, 数学函数
SQRT
ceiling(n) 返回大于或者等于n的最小整数
floor(n), 返回小于或者是等于n的最大整数
round(m,n), 四舍五入,n是保留小数的位数
abs(n)
sign(n), 当n>0, 返回1,n=0,返回0,n<0, 返回-1
PI(), 3.1415….
rand(),rand(n), 返回0-1之间的一个随机数 

SQL Server加密存储过程的破解过程

发布于:
Script

  1. Exec sp_decrypt Objectname --这是方法    
  2. CREATE PROCEDURE sp_decrypt(@objectName varchar(50))    
  3. AS    
  4. begin    
  5. set nocount on    
  6. --CSDN:j9988 copyright:2004.04.15    
  7. --V3.1    
  8. --破解字节不受限制,适用于SQLSERVER2000存储过程,函数,视图,触发器    
  9. --修正上一版视图触发器不能正确解密错误    
  10. --发现有错,请E_MAIL:CSDNj9988@tom.com    
  11. begin tran    
  12. declare @objectname1 varchar(100),@orgvarbin varbinary(8000)    
  13. declare @sql1 nvarchar(4000),@sql2 varchar(8000),@sql3 nvarchar(4000),@sql4 nvarchar(4000)    
  14. DECLARE @OrigSpText1 nvarchar(4000), @OrigSpText2 nvarchar(4000) , @OrigSpText3 nvarchar(4000), @resultsp nvarchar(4000)    
  15. declare @i int,@status int,@type varchar(10),@parentid int    
  16. declare @colid int,@n int,@q int,@j int,@k int,@encrypted int,@number int    
  17. select @type=xtype,@parentid=parent_obj from sysobjects where id=object_id(@ObjectName)    
  18. create table #temp(number int,colid int,ctext varbinary(8000),encrypted int,status int)    
  19. insert #temp SELECT number,colid,ctext,encrypted,status FROM syscomments WHERE id = object_id(@objectName)    
  20. select @number=max(number) from #temp    
  21. set @k=0    
  22. while @k<=@number    
  23. begin    
  24. if exists(select 1 from syscomments where id=object_id(@objectname) and number=@k)    
  25. begin    
  26. if @type='P'    
  27. set @sql1=(case when @number>1 then 'ALTER PROCEDURE '+ @objectName +';'+rtrim(@k)+' WITH ENCRYPTION AS '    
  28. else 'ALTER PROCEDURE '+ @objectName+' WITH ENCRYPTION AS '    
  29. end)    
  30. if @type='TR'    
  31. begin    
  32. declare @parent_obj varchar(255),@tr_parent_xtype varchar(10)    
  33. select @parent_obj=parent_obj from sysobjects where id=object_id(@objectName)    
  34. select @tr_parent_xtype=xtype from sysobjects where id=@parent_obj    
  35. if @tr_parent_xtype='V'    
  36. begin    
  37. set @sql1='ALTER TRIGGER '+@objectname+' ON '+OBJECT_NAME(@parentid)+' WITH ENCRYPTION INSTERD OF INSERT AS PRINT 1 '    
  38. end    
  39. else    
  40. begin    
  41. set @sql1='ALTER TRIGGER '+@objectname+' ON '+OBJECT_NAME(@parentid)+' WITH ENCRYPTION FOR INSERT AS PRINT 1 '    
  42. end    
  43. end    
  44. if @type='FN' or @type='TF' or @type='IF'    
  45. set @sql1=(case @type when 'TF' then    
  46. 'ALTER FUNCTION '+ @objectName+'(@a char(1)) returns @b table(a varchar(10)) with encryption as begin insert @b select @a return end '    
  47. when 'FN' then    
  48. 'ALTER FUNCTION '+ @objectName+'(@a char(1)) returns char(1) with encryption as begin return @a end'    
  49. when 'IF' then    
  50. 'ALTER FUNCTION '+ @objectName+'(@a char(1)) returns table with encryption as return select @a as a'    
  51. end)    
  52. if @type='V'    
  53. set @sql1='ALTER VIEW '+@objectname+' WITH ENCRYPTION AS SELECT 1 as f'    
  54. set @q=len(@sql1)    
  55. set @sql1=@sql1+REPLICATE('-',4000-@q)    
  56. select @sql2=REPLICATE('-',8000)    
  57. set @sql3='exec(@sql1'    
  58. select @colid=max(colid) from #temp where number=@k    
  59. set @n=1    
  60. while @n<=CEILING(1.0*(@colid-1)/2) and len(@sQL3)<=3996    
  61. begin    
  62. set @sql3=@sql3+'+@'    
  63. set @n=@n+1    
  64. end    
  65. set @sql3=@sql3+')'    
  66. exec sp_executesql @sql3,N'@Sql1 nvarchar(4000),@ varchar(8000)',@sql1=@sql1,@=@sql2    
  67. end    
  68. set @k=@k+1    
  69. end    
  70. set @k=0    
  71. while @k<=@number    
  72. begin    
  73. if exists(select 1 from syscomments where id=object_id(@objectname) and number=@k)    
  74. begin    
  75. select @colid=max(colid) from #temp where number=@k    
  76. set @n=1    
  77. while @n<=@colid    
  78. begin    
  79. select @OrigSpText1=ctext,@encrypted=encrypted,@status=status FROM #temp WHERE colid=@n and number=@k    
  80. SET @OrigSpText3=(SELECT ctext FROM syscomments WHERE id=object_id(@objectName) and colid=@n and number=@k)    
  81. if @n=1    
  82. begin    
  83. if @type='P'    
  84. SET @OrigSpText2=(case when @number>1 then 'CREATE PROCEDURE '+ @objectName +';'+rtrim(@k)+' WITH ENCRYPTION AS '    
  85. else 'CREATE PROCEDURE '+ @objectName +' WITH ENCRYPTION AS '    
  86. end)    
  87. if @type='FN' or @type='TF' or @type='IF'    
  88. SET @OrigSpText2=(case @type when 'TF' then    
  89. 'CREATE FUNCTION '+ @objectName+'(@a char(1)) returns @b table(a varchar(10)) with encryption as begin insert @b select @a return end '    
  90. when 'FN' then    
  91. 'CREATE FUNCTION '+ @objectName+'(@a char(1)) returns char(1) with encryption as begin return @a end'    
  92. when 'IF' then    
  93. 'CREATE FUNCTION '+ @objectName+'(@a char(1)) returns table with encryption as return select @a as a'    
  94. end)    
  95. if @type='TR'    
  96. begin    
  97. if @tr_parent_xtype='V'    
  98. begin    
  99. set @OrigSpText2='CREATE TRIGGER '+@objectname+' ON '+OBJECT_NAME(@parentid)+' WITH ENCRYPTION INSTEAD OF INSERT AS PRINT 1 '    
  100. end    
  101. else    
  102. begin    
  103. set @OrigSpText2='CREATE TRIGGER '+@objectname+' ON '+OBJECT_NAME(@parentid)+' WITH ENCRYPTION FOR INSERT AS PRINT 1 '    
  104. end    
  105. end    
  106. if @type='V'    
  107. set @OrigSpText2='CREATE VIEW '+@objectname+' WITH ENCRYPTION AS SELECT 1 as f'    
  108. set @q=4000-len(@OrigSpText2)    
  109. set @OrigSpText2=@OrigSpText2+REPLICATE('-',@q)    
  110. end    
  111. else    
  112. begin    
  113. SET @OrigSpText2=REPLICATE('-', 4000)    
  114. end    
  115. SET @i=1    
  116. SET @resultsp = replicate(N'A', (datalength(@OrigSpText1) / 2))    
  117. WHILE @i<=datalength(@OrigSpText1)/2    
  118. BEGIN    
  119. SET @resultsp = stuff(@resultsp, @i, 1, NCHAR(UNICODE(substring(@OrigSpText1, @i, 1)) ^    
  120. (UNICODE(substring(@OrigSpText2, @i, 1)) ^    
  121. UNICODE(substring(@OrigSpText3, @i, 1)))))    
  122. SET @i=@i+1    
  123. END    
  124. set @orgvarbin=cast(@OrigSpText1 as varbinary(8000))    
  125. set @resultsp=(case when @encrypted=1    
  126. then @resultsp    
  127. else convert(nvarchar(4000),case when @status&2=2 then uncompress(@orgvarbin) else @orgvarbin end)    
  128. end)    
  129. print @resultsp    
  130. set @n=@n+1    
  131. end    
  132. end    
  133. set @k=@k+1    
  134. end    
  135. drop table #temp    
  136. rollback tran    
  137. end   

input高级限制级用法

发布于:
Script

1.取消按钮按下时的虚线框

  在input里添加属性值 hideFocus 或者 HideFocus=true

2.只读文本框内容

在input里添加属性值 readonly

3.防止退后清空的TEXT文档(可把style内容做做为类引用)

  <INPUT style=behavior:url(#default#savehistory); type=text id=oPersistInput>

4.ENTER键可以让光标移到下一个输入框

  <input onkeydown="if(event.keyCode==13)event.keyCode=9" >

5.只能为中文(有闪动)

  <input onkeyup="value=value.replace(/[ -~]/g,”)" onkeydown="if(event.keyCode==13)event.keyCode=9">

6.只能为数字(有闪动)

  <input onkeyup="value=value.replace(/[^d]/g,”) "onbeforepaste="clipboardData.setData(‘text’,clipboardData.getData(‘text’).replace(/[^d]/g,”))">