我有一个脚本来检查文本框中的insertvalue。
<input type="number" onkeypress="return isNumber(event)" />
<script>
function isNumber(evt) {
evt = (evt) ? evt : window.event;
var charCode = (evt.which) ? evt.which : evt.keyCode;
if (charCode > 31 && (charCode < 48 || charCode > 57)) {
return false;
}
return true;
}
</script>
这个脚本很好,只允许编号。
但我希望脚本检查这种情况。
0.123456
11.12345
文本框中的总共7位数
如果在十进制2位数之前,则在小数点后4
如果在小数点1之前,则小数点后的5位数。
它是如何工作的任何脚本或其他任何有用的东西。
感谢
答案 0 :(得分:1)
答案 1 :(得分:1)
我使用autoNumeric.js进行小数操作,这真的很棒。
您可以查看网站以获取更多信息,但是您需要使用(当然在添加库并调用init
后)
data-v-max="99.9999" data-m-dec="5"
输入属性中的。
<强> FIDDLE 强>
答案 2 :(得分:1)
用户界面提示:从不阻止用户输入他们想要的内容。
当用户完成输入(即。onblur
,onchange
,无论你想要什么)时,然后检查输入是否与您的格式匹配,如果没有,则无缝通知
HTML5为您神奇地做到了这一点。
<input type="text" pattern="[0-9]\.[0-9]{5}|[0-9]{2}\.[0-9]{4}" />
注意使用text
而不是number
- 使用具有特定十进制数字格式的number
太难以理解了。
答案 3 :(得分:0)
var num = $('#number').val();
if(num && !isNaN(num * 1)) {
if(num.replace(/\./, '').length != 7) {
return false;
}
}
答案 4 :(得分:0)
如果您没有使用HTML5而且不知道正则表达式
var num = $('#number').val();
var nString = String(num);
var nArray = nString.split('.');
if((nArray[0].length == 1 && nArray[1].length == 6) || (nArray[0].length == 2 && nArray[1].length == 5))
{
//do something
}
else
return false;