我有一个带有输入字段的html表单,用于添加逗号分隔的标签。我已经以某种方式处理它,即有一个主输入需要一个字符串,并且在输入逗号时会创建一个标签并将其添加到隐藏的输入中。现在,我想验证隐藏的输入(它是带有标签的实际输入字段)在表单提交和显示消息时是否为空。
<div class="control-group">
<label class="control-label" >Tags</label>
<div class="controls">
<div class="tags-input" id = "tags" name="tags"></div>
</div>
</div>
主要输入字段和隐藏输入字段都是在div上的人体负荷下动态创建的,使用以下功能通过类标签输入
function processTag() {
[].forEach.call(document.getElementsByClassName('tags-input'), function (el) {
let hiddenInput = document.createElement('input'),
mainInput = document.createElement('input'),
tags = [];
hiddenInput.setAttribute('type', 'hidden');
hiddenInput.setAttribute('name', el.id);
hiddenInput.setAttribute('id', el.id);
hiddenInput.setAttribute('required', '');
}
我尝试了所有解决问题的方法。 required =“ required”不适用于隐藏的输入字段。使用如下所示的类名验证表单也不起作用
$(“#createForm”)。validate({ 忽略:“:hidden:not(.do_not_ignore)” });
有人可以帮我提出解决方案吗?
答案 0 :(得分:0)
必需是反映的属性。正确的方法是element.required = true。如果要使用document.getElementsByClassName,则应使用其index []。