为了账号安全,请及时绑定邮箱和手机立即绑定

验证空日期输入?

验证空日期输入?

婷婷同学_ 2023-07-06 10:02:00
我只是想在插入对象之前检查 atext和input 是否不为空。date如果它们都是空的,我希望它们不要添加到其中。然而,我所做的任何尝试,它们仍然被添加到没有任何价值的对象中。for(let i = 0; i < otherDeps.length; i++) {      let obj;      if(otherDeps[i].name && otherDeps[i].dob != "") { //Here        obj = {          name: otherDeps[i].value,          dob: otherDepsAge[i].value        };      }      otherDepsArray.push(obj);    }我已经尝试过了if(!otherDeps[i].date),ìf(otherDeps[i]name != '' && otherDeps[i].date != '0000-00-00')有人知道解决这个问题的正确方法吗?
查看完整描述

2 回答

?
忽然笑

TA贡献1806条经验 获得超5个赞

您需要检查以下两个条件来检查日期是否无效或不正确:

  • theDate.value

  • isNaN(new Date(theDate).getTime())

从这个角度来看,我们可以做这样的事情:

function checkDate() {

  var theDate = document.getElementById("date").value;

  if (theDate.trim() === "" || isNaN(new Date(theDate).getTime())) {

    console.log("Invalid Date!");

  } else {

    console.log("Valid Date!");

  }

}

<input type="date" id="date" />

<button onclick="checkDate()">Check Date</button>

for循环中,将日期值包含在checkDate()上面的条件内。这应该有效。



查看完整回答
反对 回复 2023-07-06
?
慕运维8079593

TA贡献1876条经验 获得超5个赞

如果要检查输入的日期是否无效或为空,可以使用 HTMLInputElement 的validity.badInput 属性:


submit = () => {

    const date = document.getElementById('my-date');

    if (date.value === '') {

      if (date.validity.badInput) {

        console.log('Invalid');

      } else {

        console.log('Blank');

      }

    } else {

      console.log(date.value);

    }

  }

<input type="date" id="my-date" />

<button onClick="submit()">Submit</button>


查看完整回答
反对 回复 2023-07-06
  • 2 回答
  • 0 关注
  • 76 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信