2012-10-26 45 views
2

我具有從JSON文件生成一個jQuery的數據表。所有工作都很好,但由於涉及條件格式,我陷入困境。以下腳本給出了第2列中的所有單元格爲「正」類(甚至是負整數)。我的if語句有什麼問題?的Javascript條件格式無法識別

"fnRowCallback": function(nRow, aData, iDisplayIndex, iDisplayIndexFull) { 
     if (parseFloat(aData[1]) <= 0) { 
     jQuery('td:eq(1)', nRow).addClass('negative'); 
     } else { 
     jQuery('td:eq(1)', nRow).addClass('positive'); 
     } 
     return nRow; 
} 

在此先感謝!

編輯:JSON文件(我指的是數量的部分是 「punten」:

[ 
    { 
     "spel_id": "2012-09-24 15:43:56", 
     "locatie": "white room", 
     "speler": "Arne", 
     "punten": "17" 
    }, 
    { 
     "spel_id": "2012-09-24 15:43:56", 
     "locatie": "white room", 
     "speler": "Bjorg", 
     "punten": "26" 
    } 
] 

和我的JS(使用數據表)生成表:

$(document).ready(function() { 
     var oTable = $('#example').dataTable({ 
      "sAjaxSource": "json_gespeeldekaartings.php", 
      "aoColumns": [ 
       { "mData": "kaarting"}, 
       { "mData": "speler" }, 
       { "mData": "punten"} 
      ], 
      "sAjaxDataProp": "", 
      "sPaginationType": "full_numbers", 
      "aaSorting": [], 
      "fnRowCallback": function(nRow, aData, iDisplayIndex, iDisplayIndexFull) { 
       if (parseFloat(aData[1]) <= 0) { 
        jQuery('td:eq(1)', nRow).addClass('negative'); 
       } else { 
        jQuery('td:eq(1)', nRow).addClass('positive'); 
       } 
       return nRow; 
       } 
      }) 
     }); 
+0

你能否提供更多的代碼(包括JSON)? –

+0

'console.log(aData [1])'輸出到控制檯是什麼? – Johan

+0

一個建議使用[mRender](http://www.datatables.net/usage/columns#mRender)用於此目的,並且使用了fnRowCallback。 –

回答

0

在inster的

if (parseFloat(aData[1]) <= 0) { 

使用

if (parseFloat(aData.punten <= 0) 

編輯 試試這個:

刪除fnRowCallback在這個例子中使用mRender爲:

... 
"aoColumns": [ 
       { "mData": "kaarting"}, 
       { "mData": "speler" }, 
       { "mData": "punten", 
       "sType": "numeric", 
       "mRender": function (data, type, full) { 
         if(data > 0) return "<div class='positive'>" + data + "</div>"; // example 
         return "<div class='negative'>" + data + "</div>";    // example 
       } 
       } 
      ], 
... 
+0

的問題依舊:( – Roddeh

+0

嘗試警報(aData.punten)或執行console.log(aData.punten)瑟如果它得到OK數量 –

+0

的ReferenceError:威剛沒有定義 – Roddeh