ソースコード
<script>
function validation_check(slt){
var elm = $('#' + slt);
var title = elm.attr('title');
try{
var valid=elm[0].checkValidity();
if(valid == true){
alert('正常です');
}else{
alert(valid + ' ' + title);
}
}catch( e ){
throw e;
}
}
</script>
<input type="text" id="test1" pattern="^[0-9]+$" title="数値で入力してください" value="あ">
<input type="button" value="TEST1" onclick="validation_check('test1')" class="btn btn-primary" />
<input type="text" id="test3" required maxlength="4" title="4文字以内の必須入力です。" value="">
<input type="text" id="test4" pattern="^[0-9A-Za-z]+$" title="半角英数字で入力してください。" value="abc123XYZ">
<input type="text" name="animal_name" value="" required pattern="^[0-9A-Za-z!-_@]{1,50}$" maxlength="50" title="50文字以内の半角英数字入力してください" />
<input type="text" id="test5" pattern="[0-9]{4}(-|/)[0-9]{1,2}(-|/)[0-9]{1,2}" title="日付(Y-m-d)を入力してください。(例 2012-12-12)" value="2016-10-17">
<input type="text" id="test6" pattern="[0-9]{4}(-|/)[0-9]{1,2}(-|/)[0-9]{1,2} [0-9]{1,2}:[0-9]{1,2}:[0-9]{1,2}" title="日時(Y-m-d H:i:s)を入力してください。(例 2012-12-12 12:12:12)" value="2016-10-17 10:16:33">
<input type="text" id="test7" pattern="[+-]?[0-9]+[\.]?[0-9]*([eE][+-])?[0-9]*" title="数値を入力してください。" value="-0.12">
<input type="password" value="" pattern="^[0-9A-Za-z]{8,24}" required maxlength="24" class="valid form-control" title="8~24文字の半角英数字で入力してください。" />
JavaScript
let err_msg = '';
if(!$('#old_pw')[0].checkValidity()){
err_msg = 'パスワードは8~24文字の半角英数字で入力してください。';
}
<input type="text" id="pw1" value="" pattern="^[0-9A-Za-z]{8,24}" value="" maxlength="24" class="valid form-control" title="8~24文字の半角英数字で入力してください。" />
JavaScript
let err_msg = 'エラーなし';
if(!$('#pw1')[0].checkValidity()){
err_msg = 'パスワードは8~24文字の半角英数字で入力してください。';
}
$('#res').html(err_msg);