-1

Good day. I'm trying to check a value from jquery append. Here is My Jquery

 success: function(resultData){
            $.each(resultData, function(key, val) { 
                no ++;
                    $("#result").append('<tr>  <td>' + no + '</td> <td> ' + val.FullName + 
                    '</td> <td> ' +val.attendancedate+ '  </td>'+
                    '<td>' + val.InTime + '</td>'+ 
                    '<td>' + val.OutTime + '</td>'+
                    '<td>' + val.total + '</td>' +
                    <?php if(($kode_tipe == "SPV_HO") or ($Nip == "1105321")){ ?> 
                    '<td> <a href="<?=base_url();?><?=$controller;?>/edit_jam/'+ val.nip+'/'+val.attendancedate+'/' +kode+'"> Edit </a> </td>' +
                     <?php } ?>
                    '</tr>');
            });
          }

so . I want to check in this part

'<td>' + val.InTime + '</td>'+ 
'<td>' + val.OutTime + '</td>'+

so the logic is below :

if($InTime == NULL)
{
  echo "No Time";
}else{
  echo $InTime;
}

I really don't know how to do it with jquery. Any help would be appreciated.

Here is the resultData

[{"Nip":"1602744","FullName":"RAHMAT ","KodeDetailDinas":1,"KodeDinasHeader":"DN0000001","nip":"1602744"
,"attendancedate":"2016-09-14","dayname":"Wednesday","InTime":null,"OutTime":null,"week":38,"total":null
},{"Nip":"1602744","FullName":"RAHMAT ","KodeDetailDinas":1,"KodeDinasHeader":"DN0000001","nip":"1602744"
,"attendancedate":"2016-09-15","dayname":"Thursday","InTime":null,"OutTime":null,"week":38,"total":null
},{"Nip":"1602744","FullName":"RAHMAT ","KodeDetailDinas":1,"KodeDinasHeader":"DN0000001","nip":"1602744"
,"attendancedate":"2016-09-16","dayname":"Friday","InTime":null,"OutTime":null,"week":38,"total":null
},{"Nip":"1602744","FullName":"RAHMAT ","KodeDetailDinas":1,"KodeDinasHeader":"DN0000001","nip":"1602744"
,"attendancedate":"2016-09-17","dayname":"Saturday","InTime":null,"OutTime":null,"week":38,"total":null
},{"Nip":"1602744","FullName":"RAHMAT ","KodeDetailDinas":1,"KodeDinasHeader":"DN0000001","nip":"1602744"
,"attendancedate":"2016-09-18","dayname":"Sunday","InTime":null,"OutTime":null,"week":39,"total":null
},{"Nip":"1602744","FullName":"RAHMAT ","KodeDetailDinas":1,"KodeDinasHeader":"DN0000001","nip":"1602744"
,"attendancedate":"2016-09-19","dayname":"Monday","InTime":null,"OutTime":null,"week":39,"total":null
},{"Nip":"1602744","FullName":"RAHMAT ","KodeDetailDinas":1,"KodeDinasHeader":"DN0000001","nip":"1602744"
,"attendancedate":"2016-09-20","dayname":"Tuesday","InTime":null,"OutTime":null,"week":39,"total":null
},{"Nip":"1602744","FullName":"RAHMAT ","KodeDetailDinas":1,"KodeDinasHeader":"DN0000001","nip":"1602744"
,"attendancedate":"2016-09-21","dayname":"Wednesday","InTime":null,"OutTime":null,"week":39,"total":null
YVS1102
  • 2,658
  • 5
  • 34
  • 63

4 Answers4

1

var data = [{
  "Nip": "1602744",
  "FullName": "RAHMAT ",
  "KodeDetailDinas": 1,
  "KodeDinasHeader": "DN0000001",
  "nip": "1602744",
  "attendancedate": "2016-09-14",
  "dayname": "Wednesday",
  "InTime": null,
  "OutTime": null,
  "week": 38,
  "total": null
}, {
  "Nip": "1602744",
  "FullName": "RAHMAT ",
  "KodeDetailDinas": 1,
  "KodeDinasHeader": "DN0000001",
  "nip": "1602744",
  "attendancedate": "2016-09-15",
  "dayname": "Thursday",
  "InTime": null,
  "OutTime": null,
  "week": 38,
  "total": null
}, {
  "Nip": "1602744",
  "FullName": "RAHMAT ",
  "KodeDetailDinas": 1,
  "KodeDinasHeader": "DN0000001",
  "nip": "1602744",
  "attendancedate": "2016-09-16",
  "dayname": "Friday",
  "InTime": null,
  "OutTime": null,
  "week": 38,
  "total": null
}, {
  "Nip": "1602744",
  "FullName": "RAHMAT ",
  "KodeDetailDinas": 1,
  "KodeDinasHeader": "DN0000001",
  "nip": "1602744",
  "attendancedate": "2016-09-17",
  "dayname": "Saturday",
  "InTime": null,
  "OutTime": null,
  "week": 38,
  "total": null
}, {
  "Nip": "1602744",
  "FullName": "RAHMAT ",
  "KodeDetailDinas": 1,
  "KodeDinasHeader": "DN0000001",
  "nip": "1602744",
  "attendancedate": "2016-09-18",
  "dayname": "Sunday",
  "InTime": null,
  "OutTime": null,
  "week": 39,
  "total": null
}, {
  "Nip": "1602744",
  "FullName": "RAHMAT ",
  "KodeDetailDinas": 1,
  "KodeDinasHeader": "DN0000001",
  "nip": "1602744",
  "attendancedate": "2016-09-19",
  "dayname": "Monday",
  "InTime": null,
  "OutTime": null,
  "week": 39,
  "total": null
}, {
  "Nip": "1602744",
  "FullName": "RAHMAT ",
  "KodeDetailDinas": 1,
  "KodeDinasHeader": "DN0000001",
  "nip": "1602744",
  "attendancedate": "2016-09-20",
  "dayname": "Tuesday",
  "InTime": null,
  "OutTime": null,
  "week": 39,
  "total": null
}, {
  "Nip": "1602744",
  "FullName": "RAHMAT ",
  "KodeDetailDinas": 1,
  "KodeDinasHeader": "DN0000001",
  "nip": "1602744",
  "attendancedate": "2016-09-21",
  "dayname": "Wednesday",
  "InTime": null,
  "OutTime": null,
  "week": 39,
  "total": null
}]

$.each(data, function(key, val) {


val.InTime !=null ? console.log(val.InTime) : console.log("")





});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>

Use != null For further clarification visit this

Community
  • 1
  • 1
guradio
  • 15,524
  • 4
  • 36
  • 57
1
success: function(resultData){
        $.each(resultData, function(key, val) { 
            no ++;
            var inTime = (!val.InTime) ? 'No Time' : val.InTime;

                $("#result").append('<tr>  <td>' + no + '</td> <td> ' + val.FullName + 
                '</td> <td> ' +val.attendancedate+ '  </td>'+
                '<td>' + inTime + '</td>'+ 
                '<td>' + val.OutTime + '</td>'+
                '<td>' + val.total + '</td>' +
                <?php if(($kode_tipe == "SPV_HO") or ($Nip == "1105321")){ ?> 
                '<td> <a href="<?=base_url();?><?=$controller;?>/edit_jam/'+ val.nip+'/'+val.attendancedate+'/' +kode+'"> Edit </a> </td>' +
                 <?php } ?>
                '</tr>');
        });
      }

Your code could use some refactoring.

tochi
  • 76
  • 1
  • 3
0

Here you go:

if (val.InTime.length > 0){
  $("#result").text(InTime);
} else {
  $("#result").text("No Time");
}
Noman
  • 1,459
  • 2
  • 18
  • 38
0

From my view your rendering logic is quiet complex,instead of writing whole html rendering code try this :

$.each(resultdata, function(val,index){
   var tr = $('<tr>');
   tr.append($('<td>',{
       'text': "no"
   }));
   tr.append($('<td>',{
       'text': val.FullName
   }));
   tr.append($('<td>',{
       'text': val.attendancedate
   }));
   if(val.InTime === "NULL"){
      tr.append($('<td>',{
         'text': "No Time"
      }));
   }else {
       tr.append($('<td>',{
         'text': val.InTime
      }));
   }
   //Do the same for out time as well
   $("#result").append(tr);
});

Try this.

Kunal Gadhia
  • 350
  • 2
  • 14