input 只能输入数字+小数点后两位
js 源码
//只能输入数字 或小数点后两位
function clearNoNum(obj) {
obj.value = obj.value.replace(/[^\d.]/g, ""); //清除“数字”和“.”以外的字符
obj.value = obj.value.replace(/\.{2,}/g, "."); //只保留第一个. 清除多余的
obj.value = obj.value.replace(".", "$#$").replace(/\./g, "").replace("$#$", ".");
obj.value = obj.value.replace(/^(\-)*(\d+)\.(\d\d).*$/, '$1$2.$3');//只能输入两个小数
if (obj.value.indexOf(".") < 0 && obj.value != "") {//以上已经过滤,此处控制的是如果没有小数点,首位不能为类似于 01、02的金额
obj.value = parseFloat(obj.value);
}
}
//调用
<input id="transferFeeLowest" type="text" name="transferFeeLowest" class="form-control" onkeyup="clearNoNum(this)" required>
jq
$("#stateDisable3").change {
obj = $("#stateDisable3").val();
obj.value = obj.value.replace(/[^\d.]/g, ""); //清除“数字”和“.”以外的字符
obj.value = obj.value.replace(/\.{2,}/g, "."); //只保留第一个. 清除多余的
obj.value = obj.value.replace(".", "$#$").replace(/\./g, "").replace("$#$", ".");
obj.value = obj.value.replace(/^(\-)*(\d+)\.(\d\d).*$/, '$1$2.$3');//只能输入两个小数
if (obj.value.indexOf(".") < 0 && obj.value != "") {//以上已经过滤,此处控制的是如果没有小数点,首位不能为类似于 01、02的金额
obj.value = parseFloat(obj.value);
}
}
相关的正则表达式
/** 手机号码校验 */
Pattern.compile("^((13[0-9])|(15[^4,\\D])|(17[0|(18[0-9]),1,3,5,6,7,8])|(18[0-9])|(19[0-9])|(14[5,7])|)\\d{8}$");
/** 密码格式1 */
Pattern.compile("[0-9]");
/** 密码格式2 */
Pattern.compile("(?i)[a-zA-Z]");
/** 身份证正则表达式(15位) */
Pattern.compile("^[1-9]\\d{7}((0\\d)|(1[0-2]))(([0|1|2]\\d)|3[0-1])\\d{3}$");
/** 身份证正则表达式(18位) */
Pattern.compile("^[1-9]\\d{5}[1-9]\\d{3}((0\\d)|(1[0-2]))(([0|1|2]\\d)|3[0-1])\\d{3}([0-9]|X)$");
/** 邮箱格式校验 */
Pattern.compile("\\w+([-+.]\\w+)*@\\w+([-.]\\w+)*\\.\\w+([-.]\\w+)*");
/** 英文字符串 */
Pattern.compile("^[A-Za-z0-9]+");
/** 数字or字符串 */
Pattern.compile("^[0-9a-zA-Z]*$");
/** 中文校验 */
Pattern.compile("[\\u4e00-\\u9fa5]{2,25}");
/** 价格 4位*/
Pattern.compile("^(0|[1-9][0-9]{0,9})(\\.[0-9]{1,4})?$");
/** 价格 小数与整数 整数6位 小数6位*/
Pattern.compile("^([-+]?\\d{1,6})(\\.\\d{1,6})?$");
/** 价格 小数与整数 整数6位 小数4位*/
Pattern.compile("^([-+]?\\d{1,6})(\\.\\d{1,4})?$");
/** 价格 2位 */
Pattern.compile("^(0|[1-9][0-9]{0,9})(\\.[0-9]{1,2})?$");
/** 小数 10位 */
Pattern.compile("^(0|[1-9][0-9]{0,10})(\\.[0-9]{0,10})?$");
/** 中文及中文标点符号 */
Pattern.compile("[\\u4e00-\\u9fa5]");
/** 中文标点符号 */
Pattern.compile("[\\u3002-\\uff1b-\\uff0c-\\uff1a-\\u201c-\\u201d-\\uff08-\\uff09-\\u3001-\\uff1f-\\u300a-\\u300b]");
//中文及中文符号校验
Pattern.compile("^[\\u3002-\\uff1b-\\uff0c-\\uff1a-\\u201c-\\u201d-\\uff08-\\uff09-\\u3001-\\uff1f-\\u300a-\\u300b\\u4e00-\\u9fa5]*$");
//纯字符串
Pattern.compile("^[0-9]*$");
//匹配大于等于0的正整数
Pattern.compile("^+?(([1-9]\\d?)|(0))$");
//是否为金额 (纯数字+小数点)
Pattern.compile("^([0-9]+|[0-9]{1,3}(,[0-9]{3})*)(.[0-9]{1,2})?$");
//是否有非法字符 (其他符号)
Pattern.compile("^(?!_)(?!.*?_$)[a-zA-Z0-9_\\u4e00-\\u9fa5]+$");
//使用方法
// 返回boolearn类型的值 true 符合 false 不符合
boolearn flag= pattern.matcher(name).find()