六狼论坛

 找回密码
 立即注册

QQ登录

只需一步,快速开始

新浪微博账号登陆

只需一步,快速开始

搜索
查看: 59|回复: 0

JavaScript开发类工具方法收集(一)

[复制链接]

升级  4%

14

主题

14

主题

14

主题

秀才

Rank: 2

积分
56
 楼主| 发表于 2013-2-7 15:20:41 | 显示全部楼层 |阅读模式
   相信大家做项目的时候,都会收集一些有用的小的javasciprt方法,或者开发一些应用于自己业务逻辑的JavaScript方法,但并不是每个项目中都会用到,往往上是项目数量一多,有些可重复使用的方法,在我们忙碌的工作中,却经常被不经意的忘记在自己的coding中; 其实项目中,比较深刻的感触到,每个项目中,我们都会有重复开发的一部分代码,这并不是因为我们的原因,而是因为项目组与项目组之间的交流太少,都是处于各自封闭的状态,有一种闭门造车的状态!因此,有了收集自己在项目中所用到一些JavaScript方法.
 
1. 限制只能输入小数,并且只能输入两位小数
  legionInput Function:
//用于输入两位小数,并可以在小数点前增加数字功能//author: dsy //date: 20080516function legionInput(obj, reg, inputStr){     //获取一个选择对象范围   var docSel = document.selection.createRange();     oSel = docSel.duplicate(); //创建选择范围复本   oSel.text = "";     var srcRange = obj.createTextRange(); //创建文本范围   oSel.setEndPoint("StartToStart", srcRange); //设置结束端   var str = oSel.text + inputStr + srcRange.text.substr                    (oSel.text.length);     return reg.test(str);} 

 
  CheckNumber Function:
 
/** * 检测主入口 * @author dsy * @param {Object} objId * @Date 20090523 */function CheckNumber(objId){     var obj = document.getElementById(objId);     obj.onkeypress = function(){          if ((event.keyCode < 48 || event.keyCode > 57)                && event.keyCode != 46) {               event.returnValue = false;          }           else {               return legionInput(this, /^\d*\.?\d{0,2}$/,                           String.fromCharCode(event.keyCode));          }     }} 
以上函数的使用方法,相当简单:
废话少说,上demo:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"><html>    <head>        <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />        <title>限制只能输入数字,并限制小数位</title>        <script type="text/javascript">            //用于输入两位小数,并可以在小数点前增加数字功能            //author: dsy             //date: 20080516            function legionInput(obj, reg, inputStr){                //获取一个选择对象范围                var docSel = document.selection.createRange();                oSel = docSel.duplicate(); //创建选择范围复本                oSel.text = "";                var srcRange = obj.createTextRange(); //创建文本范围                oSel.setEndPoint("StartToStart", srcRange); //设置结束端                var str = oSel.text + inputStr + srcRange.text.substr(oSel.text.length);                return reg.test(str);            }            /** * 检测主入口 * @author dsy * @param {Object} objId * @Date 20090523 */            function CheckNumber(objId){                var obj = document.getElementById(objId);                obj.onkeypress = function(){                    if ((event.keyCode < 48 || event.keyCode > 57) && event.keyCode != 46) {                        event.returnValue = false;                    }                    else {                        return legionInput(this, /^\d*\.?\d{0,2}$/, String.fromCharCode(event.keyCode));                    }                }            }window.onload = function() {CheckNumber("txt4")}        </script>    </head>    <body>        <input id="txt4" name="txt4" type="text" style="height: 24px;" size="15" />    </body></html> 
按上例所示:
只需在CheckNumber()函数,传入相应即可完成对输入是否是数字的限制
 
  
 
您需要登录后才可以回帖 登录 | 立即注册 新浪微博账号登陆

本版积分规则

快速回复 返回顶部 返回列表