无法动态检查所需字段

时间:2016-11-07 07:01:59

标签: javascript html5

我的某个输入元素的required属性取决于其中一个复选框的checked状态。我无法通过在该字段上动态设置required属性来解除HTML5所需的字段错误。

<input type="text" name="date" id="date" />
<input type="checkbox" name="immediate" id="immediate" onchange="setRequired(this.checked)" />

<script type="text/javascript">
   function setRequired(checked)
   {
        var date = document.getElementById("date");
        if(checked) {
            date.required = false;
        }
        else
            date.required = true;

   }
</script>

当我运行表单时,我没有在日期输入中看到HTML5验证。

1 个答案:

答案 0 :(得分:0)

<input type="text" name="date" id="date" />
<input type="checkbox" name="immediate" id="immediate" onchange="setRequired(this.checked)" />

<script type="text/javascript">
  function setRequired(checked)
   {
  var date = document.getElementById("date");
            console.log(checked);
    if(checked) {

        date.setAttribute("required",false);
    }
    else {
        date.setAttribute("required",true);
    }
    console.log(date);

}

CONSOLE日志将帮助您检查元素更改

http://plnkr.co/edit/xFEJchgAqX5g9u2q6iWT?p=preview