如何檢查文本框驗證兩個數字和兩個十進制值在asp.net與javascript?文本框驗證兩個數字和兩個十進制值在asp.net與javascript
對於實例whien我按在文本框中的關鍵,應該讓我只XX.XX格式,例如:12.25,25.50,48.45等
如何檢查文本框驗證兩個數字和兩個十進制值在asp.net與javascript?文本框驗證兩個數字和兩個十進制值在asp.net與javascript
對於實例whien我按在文本框中的關鍵,應該讓我只XX.XX格式,例如:12.25,25.50,48.45等
我得到了答案。
<div>
<asp:TextBox ID="TextBox2" runat="server"
onkeypress="return isDecimalNumber(event,this);" MaxLength="5">
</asp:TextBox>
</div>
<script type="text/javascript" language="javascript">
var count = 0;
function isDecimalNumber(evt, c) {
count = count + 1;
var charCode = (evt.which) ? evt.which : event.keyCode;
var dot1 = c.value.indexOf('.');
var dot2 = c.value.lastIndexOf('.');
if (count > 2 && dot1 == -1) {
c.value = "";
count = 0;
}
if (dot1 > 2) {
c.value = "";
}
if (charCode != 46 && charCode > 31 && (charCode < 48 || charCode > 57))
return false;
else if (charCode == 46 && (dot1 == dot2) && dot1 != -1 && dot2 != -1)
return false;
return true;
}
</script>
試試這個,
$('.TextBox2').keypress(function (event) {
if ((event.which != 46 || $(this).val().indexOf('.') != -1) && (event.which < 48 || event.which > 57)) {
event.preventDefault();
}
var text = $(this).val();
if ((text.indexOf('.') != -1) && (text.substring(text.indexOf('.')).length > 2)) {
event.preventDefault();
}
});
http://jsfiddle.net/hibbard_eu/vY39r/
$("#amount").on("keyup", function(){
var valid = /^\d{0,2}(\.\d{0,2})?$/.test(this.value),
val = this.value;
if(!valid){
console.log("Invalid input!");
this.value = val.substring(0, val.length - 1);
}
});
請您詳細說明*如何*和*爲什麼*這解決了OP的答案?雖然代碼在技術上可能是正確的,但教育用途卻很有限,沒有任何解釋。 – 2017-10-09 12:40:08
感謝您的建議,我是這個社區的新手,這個頁面問題本身清楚地解釋了我們正在討論的內容,這個腳本限制了實際的數字大小和十進制值,它限制了用戶在真實之後只允許兩個小數位值。 – Gopi 2017-10-31 06:41:33
你有沒有嘗試任何事情? – Wanderer 2014-10-20 05:58:47