当用户模糊此输入字段时,我想检查其有效性并使用默认浏览器" bubble"弹出。我希望不要将输入包装在表单标签中。 如何使用js实现此结果?
现在我正在尝试此代码但没有结果:
<input type="text" onblur="this.checkValidity();" required>
结果应为(但不包含在表格标签中:
<form action="/action_page.php">
Username: <input type="text" name="usrname" required>
<input type="submit">
</form>
&#13;
答案 0 :(得分:0)
见下面的例子:
var allElem = document.querySelectorAll('input, textarea');
for( var i = 0; i < allElem.length; i++ ) {
allElem[ i ].addEventListener( 'blur', function(){
if( !this.checkValidity() )
document.getElementById( 'submit' ).click()
else
this.classList.remove('has-error')
});
}
<form id="myForm" action="/action_page.php" method="POST">
Username: <input type="text" required>
<input type="submit" value="Submit" id="submit">
</form>