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 關注
- 275 瀏覽
添加回答
舉報