比较从数据库中检索到的两个日期

时间:2019-02-05 09:27:04

标签: javascript date

我正在尝试比较两个td中的两个日期,并根据比较结果更改行的CSS。

$(document).ready(function(){

    var value1 = $('.eval1').text();
    var value2 =  $('.eval2').text();
    var trr=$('.eval1').closest('tr');
    var parts =value1.split('-');
    var mydate1 = new Date(parts[0], parts[1] - 1, parts[2]);
    console.log(mydate1);
    var parts =value2.split('-');
    var mydate2 = new Date(parts[0], parts[1] - 1, parts[2]);
    console.log(mydate2);
    if( mydate1 < mydate2 ) {
        trr.css('background-color', '#F44336').css('opacity', '0.5').css('color', 'black');

    }
});

我的控制台的输出是这样的:

2735年11月17日星期日格林尼治标准时间+0100(欧洲中部法国)
周日1380年1月13日,格林尼治标准时间+0100(欧洲中部)

但是年份是错误的,因为我要检索的日期是:2018-08-13和2018-07-26。

您能帮助解决这个问题吗?

修改 Dates to compare

edit2

console.log(value1)console.log(value2)的结果

2018-07-262018-07-262018-07-262018-07-262018-07-262018-07-262018-07-262018-07-262018-07-262018-07-26
2018-08-132018-08-132018-08-132018-08-132018-08-132018-08-132018-08-132018-08-132018-08-132018-08-13

edit3

    @foreach($CommandesDomi as $Commande)
                                            <tr>
                                                <td>{{$Commande->NUM_CHASSIS_NADIN}}</td>
                                                <td>{{$Commande->CodeMarque}}</td>
                                                <td>{{$Commande->CodeModele}}</td>
                                                <td>{{$Commande->CodeFinition}}</td>
                                                <td>{{$Commande->Date_embarquement}}</td>
                                                <td class="eval2">{{$Commande->date_arrivage_oran}}</td>
                                                <td class="eval1">{{$Commande->data_dom}}</td>


                                            </tr>
                                         @endforeach

1 个答案:

答案 0 :(得分:1)

尝试此操作,而不是parts [2],请使用parts [2] .substring(0,2),parts [2]这样给日期262018,这是无效的日期,这就是为什么会出错的原因。

$(document).ready(function(){

    var value1 = $('.eval1').text();
    var value2 =  $('.eval2').text();
    var trr=$('.eval1').closest('tr');
    var parts =value1.split('-');
    var mydate1 = new Date(parts[0], parts[1] - 1, parts[2].substring(0,2));
    console.log(mydate1);
    var parts =value2.split('-');
    var mydate2 = new Date(parts[0], parts[1] - 1, parts[2].substring(0,2));
    console.log(mydate2);
    if( mydate1 < mydate2 ) {
        trr.css('background-color', '#F44336').css('opacity', '0.5').css('color', 'black');

    }
});