首页 > 解决方案 > 重置单个表单字段的自定义有效性状态

问题描述

我有一个在所有条件下都有效的基本表单字段,包括为空时:

<input id="example1" name="example" type="text" />

在一些不相关(与这个问题)的情况下,我使用 JavaScript 将此元素标记为无效:

id_('example1').setCustomValidity('All aboard the nope train!');
id_('example1').reportValidity();

我不会发布其他代码,因为如果在提交完整表单时此表单字段为空,则它是完全有效的。

如何在不尝试提交整个表单的情况下重置此特定表单字段的有效性状态?

我已经尝试过id_('post_custom_selector').validity.valid = true;,尽管它不起作用并且 ValidityState 的所有方法都是只读的.

绝对没有框架或库。

标签: javascriptvalidation

解决方案


如果第一个参数为setCustomValidity空(它仍然必须设置),那么它将重置元素的有效性

id_('post_custom_selector').setCustomValidity('');

推荐阅读