/**
* 限制输入框的输入
* 第一个参数:this
* 第二个参数:需要限制的规则,传递数组
*/
Document* {
margin: 0;
padding: 0;
}
function standardInput(that, strategy) {
var _this = $(that)
var reValue = _this.val()
var strategyList = {
'number': function (val) {
return val.replace(/^(0+)|[^\d]+/g, '')
},
'numLenght': function (val, length) {
var len = length[0]
var reVal = val
len = len.split("-");
if (val == '') {
return reVal
}
if (Number(val) <= Number(len[0])) {
reVal = Number(len[0])
}
if ((len[1] == 0 || len[1]) && Number(val) >= Number(len[1])) {
reVal = Number(len[1])
}
return reVal
}
}
reValue = strategy.reduce(function (prev, rule) {
var strategyAry = rule.split(":");
let strategy = strategyAry.shift();
if (strategyList[strategy]) {
prev = strategyList[strategy](prev, strategyAry)
}
return prev
}, reValue)
_this.val(reValue)
}
~~~js