2 回答
TA贡献1895条经验 获得超7个赞
第一种:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML>
<HEAD>
<TITLE> New Document </TITLE>
<SCRIPT LANGUAGE="JavaScript">
<!--
function testA(e){
var testValue =document.getElementById(e.id);
testValue.value =testValue.value.replace(/[^\d\.]/g,'');
if(testValue.value.indexOf(".")>-1 ){
//防止连续输入2次与2次出现小数点号.
if(testValue.value.substring(testValue.value.indexOf(".")+1,testValue.value.length).indexOf(".")>-1){
testValue.value = testValue.value.substring(0,testValue.value.lastIndexOf("."));
}
//只能输入2位,将ponit设为3将只能输入3位
var ponit= 2 ;
if(testValue.value.substring(testValue.value.indexOf(".")+1,testValue.value.length).length>=ponit){
testValue.value = ForDight( parseFloat(testValue.value),ponit);
}
}
//数字只能在0-1直接
if( parseFloat(testValue.value)>=1 || parseFloat(testValue.value)<0){
testValue.value = '0.00'
}
}
//ForDight(Dight,How):数值格式化函数,Dight要 * 格式化的 数字,How要保留的小数位数。
function ForDight(Dight,How){
var Dight = Math.round (Dight*Math.pow(10,How))/Math.pow(10,How);
return Dight;
}
//-->
</SCRIPT>
</HEAD>
<BODY>
这个是HTML的页面 直接把相关JS放到 ASPX的设计页面
<hr />
输入框
<input id="testA" onkeyup="testA(this)"
onbeforepaste="clipboardData.setData('text',clipboardData.getData('text').replace(/[^\d\.]/g,''))"
>
<hr />
你最好 前台判断,提高用户体验;后台也判断吧,保证安全.
这个兼容不兼容我也没测试。
</BODY>
</HTML>
第二种:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML>
<HEAD>
<TITLE> New Document </TITLE>
<SCRIPT LANGUAGE="JavaScript">
<!--
function testA(e){
var testValue =document.getElementById(e.id);
var temp = testValue.value.replace(/[^\d\.]/g,'');
//如果要输入3位 就匹配表达式改为 regE = /^\d*\.?\d{0,3}$/;
var regE = /^\d*\.?\d{0,2}$/;
var str='';
var i = 1;
while(i<=temp.length)
{
var gd;
gd = temp.substring(i,0);
if(regE.test(gd) == true)
{
str=gd;
}
i++;
}
testValue.value = str;
if(parseFloat( testValue.value) >=1 || parseFloat( testValue.value)<0){
testValue.value='0.00';
}
}
//-->
</SCRIPT>
</HEAD>
<BODY>
<input id="testA" onkeyup="testA(this)" >
<input id="testB" onkeyup="testA(this)" >
</BODY>
<HTML>
TA贡献1876条经验 获得超5个赞
TEXTBOX控件: <asp:TextBox ID="TextBox1" onkeydown=oncheckKey() runat="server"></asp:TextBox>
oncheckKey():是我自己定义的函数
<script language=javascript>
function oncheckKey()
{
if(window.event.keyCode!=255)
{
if(window.event.keyCode!="48"&window.event.keyCode!="49")
{
alert('不能输入该值');
return;
}
}
}
</script>
控制下键盘就可以了
- 2 回答
- 0 关注
- 324 浏览
添加回答
举报
