Javascript 字段集有效性是什么意思?

Javascript 字段集有效性是什么意思?,javascript,html,forms,validation,constraints,Javascript,Html,Forms,Validation,Constraints,以下是文档:。 我想知道字段集的有效性是什么意思。它是否意味着所有输入的有效性,例如,在字段集内?那么,如果输入超出范围的值,为什么以下操作不起作用: var form=document.querySelector('form'); form.querySelector('button')。addEventListener('click',function(){ var fieldset=form.queryselectoral('fieldset'); for(字段集的变量字段集){ var

以下是文档:。
我想知道
字段集的有效性是什么意思。它是否意味着所有
输入的有效性,例如,在
字段集
内?那么,如果输入超出范围的值,为什么以下操作不起作用:

var form=document.querySelector('form');
form.querySelector('button')。addEventListener('click',function(){
var fieldset=form.queryselectoral('fieldset');
for(字段集的变量字段集){
var output=fieldset.querySelector('output');
if(fieldset.validity.valid){
output.value='Valid!';
}否则{
output.value='无效!';
}
}
});
输入{
宽度:4em;
}
输入:无效{
轮廓:1px纯红;
}

验证

约束验证:始终禁止字段集元素进行约束验证

列出的表单关联元素是约束验证的候选元素,除非条件禁止该元素进行约束验证。(例如,如果元素是输出或字段集元素,则禁止其进行约束验证。)

HTMLFieldSetElement.reportValidity() 始终返回true,因为对象从来都不是约束验证的候选对象

您可以这样做:

var form=document.querySelector('form');
form.querySelector('button')。addEventListener('click',function(){
var fieldset=form.queryselectoral('fieldset');
for(字段集的变量字段集){
var output=fieldset.querySelector('output');
output.value=fieldset.querySelectorAll(“输入:无效”)。长度==0?'Valid!':'invalid!';
}
});
输入{
宽度:4em;
}
输入:无效{
轮廓:1px纯红;
}

验证

谢谢您的回答,但我已经知道如何使用示例表单。请参阅更新。事实证明,对象从来都不是约束验证的候选对象。它只是继承了HtmleElement的validity对象,但对它没有任何作用这是我第一次看到的。是的,当你深入挖掘时: