0-9
应该正好是8位数长。这应该由
onChange
事件。一旦用户输入完毕,就应该触发验证。如果值正确,Ajax请求将到达服务器,如果不正确,用户应该看到与html5验证中其他消息一样的消息。下面是我的代码示例:
$('#userid').on('change', checkUser);
function checkUser(e) {
var fldObj = $(this);
if (!e.target.checkValidity()) {
fldObj[0].setCustomValidity('Invalid User ID.');
console.log(fldObj.val());
} else {
//send ajax request
console.log('User ID is valid!');
}
}
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<input type="text" name="userid" id="userid" value="" pattern="[0-9]{8}" placeholder="Enter User ID">
我的代码工作不正常。如果输入无效值,则看不到消息。如果有人知道消息没有显示的原因,请让我知道。