35 lines
794 B
JavaScript
35 lines
794 B
JavaScript
|
function check(elm, rule) {
|
||
|
let input = elm.getElementsByTagName('input')[0]
|
||
|
rules[rule.validator](input, rule.trigger, (s, error) => {
|
||
|
if (s) {
|
||
|
elm.className = 'input-box'
|
||
|
let eElm = elm.getElementsByClassName('input-error-text')[0]
|
||
|
if(eElm) {
|
||
|
elm.removeChild(eElm)
|
||
|
}
|
||
|
}
|
||
|
else {
|
||
|
elm.className = 'input-box error'
|
||
|
let e = rule.message || error
|
||
|
let eElm = document.createElement('span');
|
||
|
eElm.className = 'input-error-text'
|
||
|
eElm.innerHTML = e
|
||
|
elm.appendChild(eElm)
|
||
|
}
|
||
|
})
|
||
|
}
|
||
|
|
||
|
const rules = {
|
||
|
notEmpty: (input, trigger, cd) => {
|
||
|
input.addEventListener(trigger, ()=>{
|
||
|
if (input.value) {
|
||
|
cd(true)
|
||
|
}
|
||
|
else {
|
||
|
cd(false, '不能为空!')
|
||
|
}
|
||
|
})
|
||
|
}
|
||
|
}
|
||
|
|
||
|
export { check }
|