ashwin karki
ashwin karki

Reputation: 673

How to check the condition inside the datatable?

I wanted to check the condtion inside column "data":"selectionAudit[0].assignFromDate" of datatable and show according to conditions.

var table4 = $('#auditAndNonAudit').DataTable({
            "processing" : true,
            "scrollY": 100,
            "scrollX": true,
            "ajax" : {
                "url" : A_PAGE_CONTEXT_PATH + "/form/api/getAuditNonAuditSelection/all",
                dataSrc : ''
            },
            "columns" : [ {
                "data" : "selectionId"
            }, {
                "data" : "selectionDate"
            }, {
                "data" : "selectedBy"
            }, {
                "data" : "eximPanNo"
            }, {
                "data" : "eximPanName"
            }, {
                "data" : "eximPanAddr"
            }, {
                "data" : "eximPanPhone"
            }, {
                "data" : "selectionType"
            },{
                "data" : "auditorGroupName"
            },{
                "data":"selectionAudit[0].assignFromDate",
                mRender: function(data,type,row){
                    //data means id

                    if(data != null){

                        var str='';
                        str += '<a  class="fa fa-pencil" id="edit1"></a>';

                        str += '<a class="fa fa-trash" id="delete"></a>';

                        return str;
                    }

                    else{
                        alert("not");
                    }

                }
            } ]
        })

My JSON data is:

[  
   {  
      "selectionId":1,
      "selectionDate":"2075-09-27",
      "selectedBy":"Department",
      "eximPanNo":123456,
      "eximPanName":"aaaaaaaaaaa",
      "eximPanNameEng":"PCS",
      "eximPanAddr":null,
      "eximPanAddrEng":null,
      "eximPanPhone":9843709277,
      "selectionType":"consignment",
      "consignmentNo":4567889,
      "consignmentDate":"2075-09-26",
      "productName":null,
      "selectionFromDate":null,
      "selectionToDate":null,
      "agentNo":3454,
      "selectionStatus":"1",
      "entryBy":"1",
      "entryDate":"2018-12-25 11:49:26",
      "rStatus":"1",
      "custOfficeId":1,
      "selectionAudit":[  
         {  
            "audGrpId":2,
            "selectionId":1,
            "assignFromDate":"2075-09-18",
            "assignToDate":"2075-09-27",
            "entryBy":"1",
            "rStatus":"1"
         }
      ],
      "letter":null,
      "auditorGroupName":"CC",
      "document":null,
      "assessment":null,
      "assessCatAmount":null
   },
   {  
      "selectionId":2,
      "selectionDate":"2075-09-03",
      "selectedBy":"Department",
      "eximPanNo":233,
      "eximPanName":"233",
      "eximPanNameEng":"card",
      "eximPanAddr":null,
      "eximPanAddrEng":null,
      "eximPanPhone":983764366278,
      "selectionType":"product",
      "consignmentNo":1,
      "consignmentDate":"2075-09-11",
      "productName":null,
      "selectionFromDate":"2075-09-11",
      "selectionToDate":"2075-09-04",
      "agentNo":12,
      "selectionStatus":"1",
      "entryBy":"1",
      "entryDate":"2018-12-25 12:47:04",
      "rStatus":"1",
      "custOfficeId":1,
      "selectionAudit":null,
      "letter":null,
      "auditorGroupName":null,
      "document":null,
      "assessment":null,
      "assessCatAmount":null
   }
]

The data selectionAudit[0].assignFromDate is null for selectionId =2 so it should goto else part but it is not going. Here i applied the IF condition to check the condition in datatable but it is not entering to else part.

{
                "data":"selectionAudit[0].assignFromDate",
                mRender: function(data,type,row){
                    //data means id

                    if(data != null){

                        var str='';
                        str += '<a  class="fa fa-pencil" id="edit1"></a>';

                        str += '<a class="fa fa-trash" id="delete"></a>';

                        return str;
                    }

                    else{
                        alert("not");
                    }

                }
            }

Upvotes: 0

Views: 199

Answers (1)

Karthik
Karthik

Reputation: 122

instead of checking if(data != null) { }

just check like

if(data) { } else { }

Upvotes: 1

Related Questions