对输入框输入的数字进行格式控制,是很实用的效果
2010-07-17 10:09
288 查看
<HTML>
<HEAD>
<META http-equiv='Content-Type' content='text/html; charset=gb2312'>
<TITLE>对输入框输入的数字进行格式控制,是很实用的效果</TITLE>
</HEAD>
<BODY >
<script type='text/javascript'>
// [dFilter] - A Numerical Input Mask for JavaScript
// Written By Dwayne Forehand - March 27th, 2003
// Please reuse & redistribute while keeping this notice.
var dFilterStep
function dFilterStrip (dFilterTemp, dFilterMask)
{
dFilterMask = replace(dFilterMask,'#','');
for (dFilterStep = 0; dFilterStep < dFilterMask.length++; dFilterStep++)
{
dFilterTemp = replace(dFilterTemp,dFilterMask.substring(dFilterStep,dFilterStep+1),'');
}
return dFilterTemp;
}
function dFilterMax (dFilterMask)
{
dFilterTemp = dFilterMask;
for (dFilterStep = 0; dFilterStep < (dFilterMask.length+1); dFilterStep++)
{
if (dFilterMask.charAt(dFilterStep)!='#')
{
dFilterTemp = replace(dFilterTemp,dFilterMask.charAt(dFilterStep),'');
}
}
return dFilterTemp.length;
}
function dFilter (key, textbox, dFilterMask)
{
dFilterNum = dFilterStrip(textbox.value, dFilterMask);
if (key==9)
{
return true;
}
else if (key==8&&dFilterNum.length!=0)
{
dFilterNum = dFilterNum.substring(0,dFilterNum.length-1);
}
else if ( ((key>47&&key<58)||(key>95&&key<106)) && dFilterNum.length<dFilterMax(dFilterMask) )
{
dFilterNum=dFilterNum+String.fromCharCode(key);
}
var dFilterFinal='';
for (dFilterStep = 0; dFilterStep < dFilterMask.length; dFilterStep++)
{
if (dFilterMask.charAt(dFilterStep)=='#')
{
if (dFilterNum.length!=0)
{
dFilterFinal = dFilterFinal + dFilterNum.charAt(0);
dFilterNum = dFilterNum.substring(1,dFilterNum.length);
}
else
{
dFilterFinal = dFilterFinal + "";
}
}
else if (dFilterMask.charAt(dFilterStep)!='#')
{
dFilterFinal = dFilterFinal + dFilterMask.charAt(dFilterStep);
}
// dFilterTemp = replace(dFilterTemp,dFilterMask.substring(dFilterStep,dFilterStep+1),'');
}
textbox.value = dFilterFinal;
return false;
}
function replace(fullString,text,by) {
// Replaces text with by in string
var strLength = fullString.length, txtLength = text.length;
if ((strLength == 0) || (txtLength == 0)) return fullString;
var i = fullString.indexOf(text);
if ((!i) && (text != fullString.substring(0,txtLength))) return fullString;
if (i == -1) return fullString;
var newstr = fullString.substring(0,i) + by;
if (i+txtLength < strLength)
newstr += replace(fullString.substring(i+txtLength,strLength),text,by);
return newstr;
}
</script>
<form name="fred" action="fred.htm" method="post">
<table>
<tr>
<td>输入数字:</td>
<td><input value="" type="text" onKeyDown="javascript:return dFilter (event.keyCode, this, '###-##-####');" style="font-family:verdana;font-size:10pt;width:110px;"></td>
</tr>
<tr>
<td>电话号码:</td>
<td><input value="" type="text" onKeyDown="javascript:return dFilter (event.keyCode, this, '(###) ###-####');" style="font-family:verdana;font-size:10pt;width:110px;"></td>
</tr>
<tr>
<td>邮政编码:</td>
<td><input value="" type="text" onKeyDown="javascript:return dFilter (event.keyCode, this, '###-###');" style="font-family:verdana;font-size:10pt;width:110px;"></td>
</tr>
</table>
</form>
</BODY></HTML>
<!-- 要实现此效果需要 1 个步骤: -->
<!-- 第 1 步: -->
<!-- 把下面的代码加到<BODY></BODY>区域中: -->
<script type='text/javascript'>
// [dFilter] - A Numerical Input Mask for JavaScript
// Written By Dwayne Forehand - March 27th, 2003
// Please reuse & redistribute while keeping this notice.
var dFilterStep
function dFilterStrip (dFilterTemp, dFilterMask)
{
dFilterMask = replace(dFilterMask,'#','');
for (dFilterStep = 0; dFilterStep < dFilterMask.length++; dFilterStep++)
{
dFilterTemp = replace(dFilterTemp,dFilterMask.substring(dFilterStep,dFilterStep+1),'');
}
return dFilterTemp;
}
function dFilterMax (dFilterMask)
{
dFilterTemp = dFilterMask;
for (dFilterStep = 0; dFilterStep < (dFilterMask.length+1); dFilterStep++)
{
if (dFilterMask.charAt(dFilterStep)!='#')
{
dFilterTemp = replace(dFilterTemp,dFilterMask.charAt(dFilterStep),'');
}
}
return dFilterTemp.length;
}
function dFilter (key, textbox, dFilterMask)
{
dFilterNum = dFilterStrip(textbox.value, dFilterMask);
if (key==9)
{
return true;
}
else if (key==8&&dFilterNum.length!=0)
{
dFilterNum = dFilterNum.substring(0,dFilterNum.length-1);
}
else if ( ((key>47&&key<58)||(key>95&&key<106)) && dFilterNum.length<dFilterMax(dFilterMask) )
{
dFilterNum=dFilterNum+String.fromCharCode(key);
}
var dFilterFinal='';
for (dFilterStep = 0; dFilterStep < dFilterMask.length; dFilterStep++)
{
if (dFilterMask.charAt(dFilterStep)=='#')
{
if (dFilterNum.length!=0)
{
dFilterFinal = dFilterFinal + dFilterNum.charAt(0);
dFilterNum = dFilterNum.substring(1,dFilterNum.length);
}
else
{
dFilterFinal = dFilterFinal + "";
}
}
else if (dFilterMask.charAt(dFilterStep)!='#')
{
dFilterFinal = dFilterFinal + dFilterMask.charAt(dFilterStep);
}
// dFilterTemp = replace(dFilterTemp,dFilterMask.substring(dFilterStep,dFilterStep+1),'');
}
textbox.value = dFilterFinal;
return false;
}
function replace(fullString,text,by) {
// Replaces text with by in string
var strLength = fullString.length, txtLength = text.length;
if ((strLength == 0) || (txtLength == 0)) return fullString;
var i = fullString.indexOf(text);
if ((!i) && (text != fullString.substring(0,txtLength))) return fullString;
if (i == -1) return fullString;
var newstr = fullString.substring(0,i) + by;
if (i+txtLength < strLength)
newstr += replace(fullString.substring(i+txtLength,strLength),text,by);
return newstr;
}
</script>
<form name="fred" action="fred.htm" method="post">
<table>
<tr>
<td>输入数字:</td>
<td><input value="" type="text" onKeyDown="javascript:return dFilter (event.keyCode, this, '###-##-####');" style="font-family:verdana;font-size:10pt;width:110px;"></td>
</tr>
<tr>
<td>电话号码:</td>
<td><input value="" type="text" onKeyDown="javascript:return dFilter (event.keyCode, this, '(###) ###-####');" style="font-family:verdana;font-size:10pt;width:110px;"></td>
</tr>
<tr>
<td>邮政编码:</td>
<td><input value="" type="text" onKeyDown="javascript:return dFilter (event.keyCode, this, '###-###');" style="font-family:verdana;font-size:10pt;width:110px;"></td>
</tr>
</table>
</form>
<HEAD>
<META http-equiv='Content-Type' content='text/html; charset=gb2312'>
<TITLE>对输入框输入的数字进行格式控制,是很实用的效果</TITLE>
</HEAD>
<BODY >
<script type='text/javascript'>
// [dFilter] - A Numerical Input Mask for JavaScript
// Written By Dwayne Forehand - March 27th, 2003
// Please reuse & redistribute while keeping this notice.
var dFilterStep
function dFilterStrip (dFilterTemp, dFilterMask)
{
dFilterMask = replace(dFilterMask,'#','');
for (dFilterStep = 0; dFilterStep < dFilterMask.length++; dFilterStep++)
{
dFilterTemp = replace(dFilterTemp,dFilterMask.substring(dFilterStep,dFilterStep+1),'');
}
return dFilterTemp;
}
function dFilterMax (dFilterMask)
{
dFilterTemp = dFilterMask;
for (dFilterStep = 0; dFilterStep < (dFilterMask.length+1); dFilterStep++)
{
if (dFilterMask.charAt(dFilterStep)!='#')
{
dFilterTemp = replace(dFilterTemp,dFilterMask.charAt(dFilterStep),'');
}
}
return dFilterTemp.length;
}
function dFilter (key, textbox, dFilterMask)
{
dFilterNum = dFilterStrip(textbox.value, dFilterMask);
if (key==9)
{
return true;
}
else if (key==8&&dFilterNum.length!=0)
{
dFilterNum = dFilterNum.substring(0,dFilterNum.length-1);
}
else if ( ((key>47&&key<58)||(key>95&&key<106)) && dFilterNum.length<dFilterMax(dFilterMask) )
{
dFilterNum=dFilterNum+String.fromCharCode(key);
}
var dFilterFinal='';
for (dFilterStep = 0; dFilterStep < dFilterMask.length; dFilterStep++)
{
if (dFilterMask.charAt(dFilterStep)=='#')
{
if (dFilterNum.length!=0)
{
dFilterFinal = dFilterFinal + dFilterNum.charAt(0);
dFilterNum = dFilterNum.substring(1,dFilterNum.length);
}
else
{
dFilterFinal = dFilterFinal + "";
}
}
else if (dFilterMask.charAt(dFilterStep)!='#')
{
dFilterFinal = dFilterFinal + dFilterMask.charAt(dFilterStep);
}
// dFilterTemp = replace(dFilterTemp,dFilterMask.substring(dFilterStep,dFilterStep+1),'');
}
textbox.value = dFilterFinal;
return false;
}
function replace(fullString,text,by) {
// Replaces text with by in string
var strLength = fullString.length, txtLength = text.length;
if ((strLength == 0) || (txtLength == 0)) return fullString;
var i = fullString.indexOf(text);
if ((!i) && (text != fullString.substring(0,txtLength))) return fullString;
if (i == -1) return fullString;
var newstr = fullString.substring(0,i) + by;
if (i+txtLength < strLength)
newstr += replace(fullString.substring(i+txtLength,strLength),text,by);
return newstr;
}
</script>
<form name="fred" action="fred.htm" method="post">
<table>
<tr>
<td>输入数字:</td>
<td><input value="" type="text" onKeyDown="javascript:return dFilter (event.keyCode, this, '###-##-####');" style="font-family:verdana;font-size:10pt;width:110px;"></td>
</tr>
<tr>
<td>电话号码:</td>
<td><input value="" type="text" onKeyDown="javascript:return dFilter (event.keyCode, this, '(###) ###-####');" style="font-family:verdana;font-size:10pt;width:110px;"></td>
</tr>
<tr>
<td>邮政编码:</td>
<td><input value="" type="text" onKeyDown="javascript:return dFilter (event.keyCode, this, '###-###');" style="font-family:verdana;font-size:10pt;width:110px;"></td>
</tr>
</table>
</form>
</BODY></HTML>
<!-- 要实现此效果需要 1 个步骤: -->
<!-- 第 1 步: -->
<!-- 把下面的代码加到<BODY></BODY>区域中: -->
<script type='text/javascript'>
// [dFilter] - A Numerical Input Mask for JavaScript
// Written By Dwayne Forehand - March 27th, 2003
// Please reuse & redistribute while keeping this notice.
var dFilterStep
function dFilterStrip (dFilterTemp, dFilterMask)
{
dFilterMask = replace(dFilterMask,'#','');
for (dFilterStep = 0; dFilterStep < dFilterMask.length++; dFilterStep++)
{
dFilterTemp = replace(dFilterTemp,dFilterMask.substring(dFilterStep,dFilterStep+1),'');
}
return dFilterTemp;
}
function dFilterMax (dFilterMask)
{
dFilterTemp = dFilterMask;
for (dFilterStep = 0; dFilterStep < (dFilterMask.length+1); dFilterStep++)
{
if (dFilterMask.charAt(dFilterStep)!='#')
{
dFilterTemp = replace(dFilterTemp,dFilterMask.charAt(dFilterStep),'');
}
}
return dFilterTemp.length;
}
function dFilter (key, textbox, dFilterMask)
{
dFilterNum = dFilterStrip(textbox.value, dFilterMask);
if (key==9)
{
return true;
}
else if (key==8&&dFilterNum.length!=0)
{
dFilterNum = dFilterNum.substring(0,dFilterNum.length-1);
}
else if ( ((key>47&&key<58)||(key>95&&key<106)) && dFilterNum.length<dFilterMax(dFilterMask) )
{
dFilterNum=dFilterNum+String.fromCharCode(key);
}
var dFilterFinal='';
for (dFilterStep = 0; dFilterStep < dFilterMask.length; dFilterStep++)
{
if (dFilterMask.charAt(dFilterStep)=='#')
{
if (dFilterNum.length!=0)
{
dFilterFinal = dFilterFinal + dFilterNum.charAt(0);
dFilterNum = dFilterNum.substring(1,dFilterNum.length);
}
else
{
dFilterFinal = dFilterFinal + "";
}
}
else if (dFilterMask.charAt(dFilterStep)!='#')
{
dFilterFinal = dFilterFinal + dFilterMask.charAt(dFilterStep);
}
// dFilterTemp = replace(dFilterTemp,dFilterMask.substring(dFilterStep,dFilterStep+1),'');
}
textbox.value = dFilterFinal;
return false;
}
function replace(fullString,text,by) {
// Replaces text with by in string
var strLength = fullString.length, txtLength = text.length;
if ((strLength == 0) || (txtLength == 0)) return fullString;
var i = fullString.indexOf(text);
if ((!i) && (text != fullString.substring(0,txtLength))) return fullString;
if (i == -1) return fullString;
var newstr = fullString.substring(0,i) + by;
if (i+txtLength < strLength)
newstr += replace(fullString.substring(i+txtLength,strLength),text,by);
return newstr;
}
</script>
<form name="fred" action="fred.htm" method="post">
<table>
<tr>
<td>输入数字:</td>
<td><input value="" type="text" onKeyDown="javascript:return dFilter (event.keyCode, this, '###-##-####');" style="font-family:verdana;font-size:10pt;width:110px;"></td>
</tr>
<tr>
<td>电话号码:</td>
<td><input value="" type="text" onKeyDown="javascript:return dFilter (event.keyCode, this, '(###) ###-####');" style="font-family:verdana;font-size:10pt;width:110px;"></td>
</tr>
<tr>
<td>邮政编码:</td>
<td><input value="" type="text" onKeyDown="javascript:return dFilter (event.keyCode, this, '###-###');" style="font-family:verdana;font-size:10pt;width:110px;"></td>
</tr>
</table>
</form>
相关文章推荐
- JS控制只能往输入框中输入数字
- JavaScript控制输入框中只能输入中文、数字和英文
- js控制input输入框只能输入数字
- 史上最全的js/jquery/javascript控制input输入框输入格式的代码
- js验证只能输入汉字 只能输入数字 只能输入英文和数字 控制输入框只能输入...
- 控制 输入框 只能输入数字、小数、负数
- JS控制输入框只输入数字类型与文件域只能选择文件的JS实现
- 文本框中控制只能输入数字,如果粘贴不符合格式,提示重新出入
- jquery控制输入框只能从键盘输入数字
- [置顶] Java限制格式,只能输入数字的输入框JTextField
- JS控制只能往输入框中输入数字
- JS 控制 输入框input 输入数字
- js验证只能输入汉字 只能输入数字 只能输入英文和数字 控制输入框只能输入...
- swt 控制 输入框只能输入数字
- jquery控制输入框只输入数字,可以粘贴,判断粘贴内容是否全是数字
- JS控制只能往输入框中输入数字
- JS常用正则表达式和JS控制输入框输入限制(数字、汉字、字符)
- JS控制Input输入框只能输入数字
- javascript:控制输入框只能输入数字
- js实现input中输入数字,控制每四位加一个空格(银行卡号格式)