js正则限制input框输入只能输入大于0的整数或者保留两位数的小数 5
<html>
<head>
<meta charset="UTF-8">
</head>
<body>
<input type="text" id="input" />
<script>
var input=document.getElementById("input");
function AddEventInput(i){
//这里就不做兼容了
i.addEventListener("blur",function(){
var value=i.value;
var reg=/(^[1-9]{1}[0-9]*$)|(^[0-9]*\.[0-9]{2}$)/
if(!reg.test(value)){
console.log("请输入大于0的整数或者保留两位小数")
}else{
console.log("输入正确");
};
});
}
AddEventInput(input);
</script>
</body>
</html>
这里定义了一个函数AddEventInput有一个参数i其实就是需要传入的input节点
函数AddEventInput为传入的节点添加了失去焦点事件
在失去焦点事件触发的函数中定义了一个正则 正则的意思我就不详细说了
正则是当input的值是大于0的整数或者保留两位数的小数就返回true 不是就返回false
<html>
<head>
<meta charset="UTF-8">
</head>
<body>
<input type="text" id="input" />
<script>
var input=document.getElementById("input");
function AddEventInput(i){
//这里就不做兼容了
i.addEventListener("blur",function(){
var value=i.value;
var reg=/(^[1-9]{1}[0-9]*$)|(^[0-9]*\.[0-9]{2}$)/
if(!reg.test(value)){
console.log("请输入大于0的整数或者保留两位小数")
}else{
console.log("输入正确");
};
});
}
AddEventInput(input);
</script>
</body>
</html>
这里定义了一个函数AddEventInput有一个参数i其实就是需要传入的input节点
函数AddEventInput为传入的节点添加了失去焦点事件
在失去焦点事件触发的函数中定义了一个正则 正则的意思我就不详细说了
正则是当input的值是大于0的整数或者保留两位数的小数就返回true 不是就返回false
追答:<input onblur="value=value.replace(/^((\d*[1-9])|(0?\.\d{2}))$/g,'') ">
blur是焦点离开事件
应该加到blur上才好。匹配整数和两位小数的应该是^((\d*[1-9])|(0?\.\d{2}))$
0.11和 .11是等价的
这个完整写出来是什么样的呢?加上事件写出来下吗 ?谢谢!
blur是焦点离开事件