我試圖從文本框中將JavaScript函數設置爲validate integer values
。驗證它的最佳方法是什麼,以便只有integer and float
值可以接受?用於浮點數和整數驗證的JavaScript
驗證號碼所需的Java腳本函數。
我試圖從文本框中將JavaScript函數設置爲validate integer values
。驗證它的最佳方法是什麼,以便只有integer and float
值可以接受?用於浮點數和整數驗證的JavaScript
驗證號碼所需的Java腳本函數。
JavaScript具有內置函數isNaN(text)。只需將文本框的文本傳遞給該函數即可獲得布爾結果。
// remove whitespaces
var input = input.replace(/\s+/g,"");
// check if the input is a valid number
if(isFinite(input) && input != ''){
// do your thing
}
記住isFinite的只接受像'20 0.50' 和'20不,50' 作爲在某些國家自定義值。如果你需要這種靈活性,你需要做額外的字符串預處理。通過這種解決方案,只允許有一千個分隔符(例如'100 000')。
不幸的是,檢查一個空字符串是必要的,因爲isFinite('')返回true。
你也可以使用此功能從用戶CMS(詳細解釋見:Validate decimal numbers in JavaScript - IsNumeric())!
function isNumber(n) {
return !isNaN(parseFloat(n)) && isFinite(n);
}
VAR有效= isNaN(值); 如:
!isNaN('0'); // true
!isNaN('34.56'); // true
!isNaN('.34'); // true
!isNaN('-34'); // true
!isNaN('foo'); // false
!isNaN('08'); // true
!isNaN(''), !isNaN(' '), !isNaN('\n\t')
等都是真的!
空白測試+ isNaN FTW:
var valid = !/^\s*$/.test(value) && !isNaN(value);
最適合我永遠解決方案,在JavaScript數字驗證。
function isFloat(evt) {
var charCode = (event.which) ? event.which : event.keyCode;
if (charCode != 46 && charCode > 31 && (charCode < 48 || charCode > 57)) {
alert('Please enter only no or float value');
return false;
}
else {
//if dot sign entered more than once then don't allow to enter dot sign again. 46 is the code for dot sign
var parts = evt.srcElement.value.split('.');
if (parts.length > 1 && charCode == 46)
{
return false;
}
return true;
}
}
只是複製和過去的JavaScript代碼,並應用到您的文本框onkeypress事件這樣的..
<input type="text" onkeypress="return isFloat(event)" />
onload =function(){
var ele = document.querySelectorAll('.number-only')[0];
ele.onkeypress = function(e) {
if(isNaN(this.value+""+String.fromCharCode(e.charCode)))
return false;
}
ele.onpaste = function(e){
e.preventDefault();
}
}
<input class="number-only" type=text />
不適用於負值 – spy 2015-07-11 14:28:00
http://stackoverflow.com/questions/3885817/how-to-check-if-a-number-is-float-or-integer – 2012-02-17 10:36:31
更好:http://stackoverflow.com/questions/18082/validate-numbers-in-javascript-isnumeric – Lukas 2012-02-17 10:41:23
顯示我們'JavaScript函數',你嘗試.. – Vijay 2013-08-26 04:25:22