文本框可以输入或拖拽 0-9和/

 

js代码:

var dropFalg = ""; /*判断鼠标是否进行过拖拽*/
var tmpValue= "";  /*鼠标拖拽的值*/
/*
 *判断鼠标选中的值是否合法
*/
function selectClear(){
   if(dropFalg == "")tmpValue = document.selection.createRange().text; /*页面上没用进行鼠标拖拽时,取得鼠标选中的值*/
   if(tmpValue!="" && !checkKeycode(tmpValue)){ /*判断选中的值得合法性质*/
       if(dropFalg != "")document.selection.clear();/*当页面上进行过鼠标拖拽时,清理选中的值*/
   }
 }
 /*
  *清理,页面上复制的缓存
 */
function cleartmpData(){
   of();/*判断当前页面上是否进行过复制 并且判断复制的内容的合法性质*/
   if(dropFalg!= "")dropFalg= ""; /*判断鼠标进行过拖拽,将其标志变量,清空*/
}
 /*
  *页面上入力时,进行的验证
 */
function cd(){
 /*判断入力值得键值*/
    if((event.keyCode > 36 && event.keyCode < 41)|| (event.keyCode > 45 && event.keyCode < 58) || event.keyCode == 191 || event.keyCode == 8 || event.keyCode == 111 ||(event.keyCode > 95 && event.keyCode < 106)){
 }
 else{
      event.returnValue = false; /*事件值,返回假*/
 }
 cleartmpData();/*清理,页面上复制的缓存*/
 }
 /*
  *验证入力值是否合法
 */
function checkKeycode(o){
   return new RegExp("^[//d/]+$").test(o.replace(new RegExp("//s","g"),""));/*替换鼠标选择值得回车,并且匹配鼠标选择值包换不合法字符时,返回标志设置为假*/
 }
 /*
  *鼠标进行拖时执行
 */
 function ck(){
   if(dropFalg == "")tmpValue = document.selection.createRange().text;/*页面上没用进行鼠标拖拽时,取得鼠标选中的值*/
   dropFalg = "a";/*设置鼠标进行过拖拽*/
 }
 /*
  *判断当前页面上是否进行过复制 并且判断复制的内容的合法性质
 */
 function of(){
     /*判断当前页面上是否进行过复制 并且判断复制的内容的合法性质*/
     if(window.clipboardData.getData("text")!= null && !checkKeycode(window.clipboardData.getData("text"))){
       window.clipboardData.clearData("text");/*复制内容不合法时,清理复制的内容*/
   }
 }

html代码:

<html>
<head>
<script language="javascript" type="text/javascript" src="inputcheck.js"></script>
</head>
<body>
<h1>日期(只能输入数字和/)</h1>
<h1>做拽一下,到下面的文本框中</h1>
<h1>测试:1234567890/</h1>
<h1>测试:2007/01/03</h1>
<h1>测试:下123面的123文本框123中</h1>
<h1>测试:下.213123/123123//1231231</h1>
<h1>测试:到/下1面2的3文4本5框中</h1>
<input type="text" value="" id="t" style= "ime-mode:disabled" οnmοuseοver="selectClear();cleartmpData();" οnkeydοwn="cd();" size="50" οndrοp="ck();" maxlength="10" οnfοcus="of();"/>
</body>

</html>

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值