我想比较当前日期的日期,如果日期介于日期之间,则禁用按钮

时间:2019-07-20 10:23:56

标签: javascript php laravel

如果当前日期在三个月之间,我将尝试禁用我的按钮。

我尝试过使用Php和JavaScript组合,但对我没有用

PHP代码

@php($found = false)

@foreach($doctors as $doctor)
        @if($doctor->transaction_id != NULL && $doctor->plan != NULL && $doctor->cabin == "Cabin 1" && $doctor->day =="Friday" && $doctor->time == "8.00 - 10.00") 
            <?php
            $found = true;
            $time = substr($doctor->timestamp,10);
            ?>
        @endif
@endforeach

@if($found)
    <button type="button" id="btnn" onload="loadImage()" class="btn btn-info btn-lg matchButton" data-toggle="modal" data-target="#myModal">8.00 - 10.00</button>&nbsp;
@else
    <button type="button" onload="loadImage()" class="btn btn-info btn-lg" data-toggle="modal" data-target="#myModal">8.00 - 10.00</button>&nbsp;
@endif

JavaScript代码

<script>
  function loadImage(){
     var time = <?php $time;?>
     <?php
     $dt = strtotime($time);
     $time2= date("Y-m-d", strtotime("+3
       month", $dt));
     ?>
     var time2 = <?php $time2;?>
     var today = new Date();
     var dd = today.getDate();
     var mm = today.getMonth()+1;
     var yyyy = today.getFullYear();

     if(dd<10)
     {
         dd='0'+dd;
     }

     if(mm<10)
     {
         mm='0'+mm;
     }
     <?php
     $dt = strtotime($time);
     echo date("Y-m-d", strtotime("+3month", $dt));
     ?>
     var bt = document.getElementById('btnn');
     today = yyyy+'-'+mm+'-'+dd;
     if(today>time && today<time2)
     {
         bt.disabled = true;
     }
     else{
         bt.disabled = false;
     }
  }
</script>

我正在从时间戳记中提取一个子串作为YYYY-MM-DD

1 个答案:

答案 0 :(得分:0)

这一切都可以在Blade中用Carbon完成:

@if (! \Carbon\Carbon::now()->between(\Carbon\Carbon::parse($startingDate), \Carbon\Carbon::parse($endingDate)))
    YOUR BUTTON CODE, IF CURRENT DATE IS NOT BETWEEN $startingDate and $endingDate
@endif

设置$startingDate$endingDate,此代码将检查当前日期是否在这两个日期之间。如果是,则什么也不会显示。如果不是,按钮将显示。