js驗證整數(shù)加保留小數(shù)點的簡單實例
更新時間:2013年12月02日 15:00:36 作者:
這篇文章主要介紹了js驗證整數(shù)加保留小數(shù)點的簡單實例,有需要的朋友可以參考一下
復(fù)制代碼 代碼如下:
function validateNum(obj) {
//正整數(shù)(此處用了緩存)
var number = obj.data(validate).number;
//小數(shù)點(此處用了緩存)
var decimal = obj.data(validate).decimal;
//動態(tài)基本驗證正則
eval("var reg = /^[0-9]{0," + number + "}([.]?[0-9]{0," + decimal + "})$" + "/g;");
var value = obj.val();
var maxnumlen = number + decimal + 1; //最大長度 + 1(小數(shù)點)
if (!reg.test(obj.val())) return false;
//最大長度等于當(dāng)前值的長度并且值沒有"."
if (maxnumlen == value.length && value.indexOf('.') <= 0) {
return false;
}
//嘗試得到"."的索引
var valueindexof = value.indexOf('.');
if (valueindexof > 0) {
//如果"."索引后一位是空那么肯定是返回false
if (value.charAt(valueindexof + 1) == "") {
return false;
}
}
//分割值就很容易判斷出前后內(nèi)容
var valuesplit = value.split('.');
//如果值的長度大于定義的正整數(shù)長度
if (value.length > number) {
if (valuesplit.length == 1) {
return false;
}
//最大長度-所定義長度 大于 最大長度 即超長 ,false.
if (maxnumlen - number >= maxnumlen) {
return false;
}
}
return true;
}
給元素緩存一個validate對象后,調(diào)用即可。
定義:
$("#example").data("validate", { number: 2, decimal: 2 });
調(diào)用:
validateNum($("#example));
相關(guān)文章
Prototype 1.5.0_rc1 及 Prototype 1.5.0 Pre0小抄本
Prototype 1.5.0_rc1 及 Prototype 1.5.0 Pre0小抄本...2006-09-09微信小程序踩坑記錄之解決tabBar.list[3].selectedIconPath大小超過40kb
這篇文章主要給大家介紹了關(guān)于微信小程序踩坑記錄之解決tabBar.list[3].selectedIconPath大小超過40kb的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),需要的朋友參考借鑒,下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2018-07-07JavaScript代碼調(diào)試方法實例小結(jié)
這篇文章主要介紹了JavaScript代碼調(diào)試方法,結(jié)合實例形式總結(jié)分析了JavaScript錯誤信息的處理與代碼調(diào)試相關(guān)操作技巧,需要的朋友可以參考下2019-01-01Javascript 模擬mvc實現(xiàn)點餐程序案例詳解
這篇文章主要介紹了Javascript 模擬mvc實現(xiàn)點餐程序案例詳解,本文給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下2020-12-12基于JS實現(xiàn)將JSON數(shù)據(jù)轉(zhuǎn)換為TypeScript類型聲明的工具
在TypeScript?項目中,我們經(jīng)常需要使用聲明一系列的ts類型。然而,手動寫的效率實在太低,本文就實現(xiàn)一個工具將?JSON?數(shù)據(jù)轉(zhuǎn)換為?TypeScript?類型定義,需要的可以參考一下2023-04-04