javascript - 保持提交按钮禁用,直到填充动态创建的必填字段

标签 javascript jquery html validation

我想保持提交按钮处于禁用状态,直到填写必填字段为止。

首先, 我发现了一些关于这个问题的问题,但问题是我有一些必填字段和非必填字段,而且我正在动态创建这些字段。 这是一个例子:

<input type="text" id="releaseartist" name="releaseartist" required="true" placeholder="Required Field"/>

我也有这样的输入,这就是我动态创建它们的方式,

var trackartistinput = document.createElement('input');
trackartistinput.setAttribute('type', "text");
trackartistinput.setAttribute('id', "trackartist" + i);
trackartistinput.setAttribute('name', "trackartist");
trackartistinput.setAttribute("required", true);
trackartistinput.setAttribute("placeholder", "Required Field");
trackartistinput.setAttribute("class", "required");

这是我的提交按钮:

<input type="submit" class="btn btn-primary" value="Submit" id="form-submit" onclick="return myConfirm();" />

最佳答案

您可以检查到目前为止在文档中添加的必填字段的数量,并根据数量您可以将提交按钮的属性设置为禁用或启用。

您可以按如下方式计算所需的类组件:

var numItems = $('.required').length

编辑

要检查是否填充了所有必需的类元素,您可以检查如下:

var required_ele = document.getElementsByClassName('required');
var allfilled=true;
for (var i = 0; i < required_ele.length; ++i) {
    var item = required_ele[i];  
    if(item.value.length==0){
      allfilled=false;
    }
}
if(allfilled){
   document.getElementById("form-submit").disabled = false;
}
else{
  document.getElementById("form-submit").disabled = true;
}

关于javascript - 保持提交按钮禁用,直到填充动态创建的必填字段,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19420378/

相关文章:

javascript - 保存用户的黑暗模式偏好的问题

javascript - 从 jQuery Mobile 1.2.0 升级到 1.3.1 会破坏输入框

javascript - 我如何在 node.js 中搜索?

javascript - 使用 javascript 将按钮添加到表格

javascript - Jquery UI 可排序不起作用

html - 文字在小屏幕上消失

html - Bootstrap 切换下拉菜单而不创建事件菜单项

javascript - jQuery Ajax,在ajax进行时阻止刷新按钮

jQuery 和 AJAX 加载 html、选择其中的元素并附加到当前 DOM

php - 显示 $_SERVER ['PHP_SELF' 之后选择的选项]