繁体   English   中英

如何根据选择设置开始日期和结束日期的警报?

[英]how to set alert for start date and end date depending on the selection?

下面的代码在开始日期和结束日期为空白时发出警报。 与此同时,我想要类似如果开始日期已填写但结束日期未填写的情况,则应提醒“结束日期不能为空”,反之亦然。

function validatecommon(cal1,cal2) {
   if ( cal1 == '' || cal2 == '') {
      alert("Start Date and End Date can not be left blank ");
      return false;
}

用这个:

function validatecommon(cal1,cal2) {

 if ( cal1 == '' && cal2 == '') {
            alert("Start Date and End Date can not be left blank ");
            return false;}
else
    if(cal1 && cal1 != '' && cal2 == ''){
     alert("End Date can not be left blank ");
                return false;}
else
    if(cal2 && cal2 != '' && cal1 == ''){
     alert("Start Date can not be left blank ");
                return false;}
}

这仅是为了结束:

     if(cal1 != '' && cal2 == ''){
           alert("End Date can not be left blank ");
           return false;
    }

请记住,一旦函数“返回”,它将立即停止处理.... so,因此只有其中一种情况会发出警报。

function validatecommon(cal1,cal2) {

    if ( cal1 == '' && cal2 == '') {
        alert("Start Date and End Date can not be left blank ");
        return false;
    }
    if ( cal1 == '' ) {
        alert("Start Date can not be left blank ");
        return false;
    }
    if ( cal2 == '' ) {
        alert("End Date can not be left blank ");
        return false;
    }
    return true;
}

如果您希望每个案例都可以使用else if

 if ( cal1 == '' && cal2 == '') {
        alert("Start Date and End Date can not be left blank ");
        return false;}
 else if ( cal1 == '' && cal2 != '') {
        alert("Start Date can not be left blank ");
        return false;}
 else if ( cal1 != '' && cal2 == '') {
        alert("End Date can not be left blank ");
        return false;}
 else{return true}
 if ( cal1 == '' && cal2 == '') {
        alert("Start Date and End Date can not be left blank ");
        return false;
 }
 else if ( cal1 == '') {
        alert("Start Date can not be left blank ");
        return false;
 }
 else if ( cal2 == '') {
        alert("End Date can not be left blank ");
        return false;
 }
 else{
    return true;
 }

我也是:

function validatecommon(cal1,cal2) {
  if ( cal1 == '' && cal2 == '') {
    alert("Start Date and End Date can not be left blank ");
    return false;
  }
  if ( cal1 == '') {
    alert("Start Date can not be left blank ");
    return false;
  }
  if ( cal2 == '') {
    alert("End Date can not be left blank ");
    return false;
  }
  return true;
}

有很多方法可以做到这一点。 最简单的方法是使用else if语句。 如果您不知道我建议阅读一些内容(请尝试W3schools或诸如codeschool之类的教程网站)。 您的最终代码应如下所示:

if(!startDate && !endDate) {
    //both are missing, alert here
} else if (!startDate) {
    //only missing start date, alert here
} else if (!endDate) {
    //only missing end Date, alert here 
} else {
  //Both dates present, perform success action
}

请注意,我在这里只使用了!startDate和!endDate,因为这样也可以在这里检查true和false值。 因此,如果!startDate不仅是一个空字符串,而且实际上是未定义的,它将进入相应的块。 猜猜您可能不了解真假,因为如果您不了解其他事情,我建议您继续阅读。 希望这可以帮助!

编辑:只是记住,如果变量在这里是字符串'0',您将会遇到麻烦,但是,如果您只是在检查应该没问题的日期,请小心,如果在其他地方使用此方法。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM