【发布时间】:2020-01-16 05:43:51
【问题描述】:
在使用内置的 HTML5 表单验证时,我更改了出现的错误消息,但是当字段被修复时,错误消息不断出现,并且无论我做什么都无法验证该字段。
如果最初在字段中输入了正确的数据,则验证正常,表单将提交并继续。
但是如果我输入了无效的数据,那么自定义错误信息会在第一时间正确显示在字段上,但是即使在数据被更正之后,错误信息也会每次都不断出现并阻止提交表单。
在此示例代码中,我使用带有模式属性的文本输入来获取浮点数和数字输入以获取整数。
<form>
Enter floating point nnumber:
<input type='text' pattern='[0-9]*\.?[0-9]+' id='float-only' name='float-only' value=''>
Enter integer number:
<input type='number' id='int-only' name='int-only' min='0' step='1' value=''>
</form>
<script>
document.getElementById('float-only').oninvalid = function(event) { event.target.setCustomValidity('Please enter valid FLOATING POINT number.'); }
document.getElementById('int-only').oninvalid = function(event) { event.target.setCustomValidity('Please enter valid INTEGER.'); }
</script>
【问题讨论】:
标签: javascript html