Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/375.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 类型错误:无法为空值检查读取未定义的属性长度_Javascript_Html_Jquery_Django - Fatal编程技术网

Javascript 类型错误:无法为空值检查读取未定义的属性长度

Javascript 类型错误:无法为空值检查读取未定义的属性长度,javascript,html,jquery,django,Javascript,Html,Jquery,Django,这些是我的html表单的javascript函数,分别用于验证“input”元素和“select”元素中的空值。空的\u选择\u检查功能不起作用,我不知道为什么,但是空的\u值检查对单个字段起作用。但是,它在空值函数中不起作用。请注意,当用户单击submit时,将调用空的_值_all()。 我得到以下错误: 类型错误:无法为空值检查读取未定义的属性长度。你知道为什么它适用于单个字段,但不适用于我尝试提交的时候吗?如果您需要我的html代码,但基本上它只是带有onkeyup=“”的输入元素,我在其

这些是我的html表单的javascript函数,分别用于验证“input”元素和“select”元素中的空值。空的\u选择\u检查功能不起作用,我不知道为什么,但是空的\u值检查对单个字段起作用。但是,它在空值函数中不起作用。请注意,当用户单击submit时,将调用空的_值_all()。 我得到以下错误:

类型错误:无法为空值检查读取未定义的属性长度。你知道为什么它适用于单个字段,但不适用于我尝试提交的时候吗?如果您需要我的html代码,但基本上它只是带有onkeyup=“”的输入元素,我在其中调用js函数,请告诉我

  function submitform(){
      empty_value_all()
      $('#Start').click()
    }
  }


function empty_value_check(ele) {
  let value = ele.value;
  console.log(value)
  if (value === '' || value.length === 0) {
    if ($(ele).closest('div').find('small').length != 0)
      $(ele).closest('div').find('small').removeClass('hide').removeClass('d-none');
    else
      $(ele).closest('div').nextAll('small').removeClass('hide').removeClass('d-none');
      $(ele).addClass('is-invalid');
  }
  else {
    $(ele).nextAll('small').addClass('hide');
    $(ele).removeClass('is-invalid');
  }
}


function empty_select_check(ele) {
  if (ele.value === "Select Folder" || ele.value === undefined) {
      $(ele).addClass('invalid-feedback');
  return false
    } else {
      $(ele).removeClass('is-invalid');
    }
}


$(function() {
  $('#field_5,#field_6,#field_7').on('change', empty_select_check(this))
})

function empty_value_all() {
  $('#field_1,#field_2,#field_3,#field_4').each(empty_value_check(this));
  $('#field_5,#field_6,#field_7').each(empty_select_check(this));
  return false;
}


$(选择器)。每个(循环函数)
都需要一个函数作为输入,但在所讨论的代码中,它是传递的函数的结果。如下所示更新
空值\u all
,然后重试

function empty\u value\u all(){
$(“#字段_1,#字段_2,#字段_3,#字段_4”)。每个(函数(){
空值检查(此);
});
$(“#字段_5,#字段_6,#字段_7”)。每个(函数(){
清空\u选择\u检查(此项);
});
//...
}

看起来您传递到
空值检查中的参数未被正确处理,因为这是一个
类型错误
,您的函数需要一个字符串,然后您必须发现它得到一个
未定义的
类型对象