parseInt为CSS属性的总价值返回NaN


parseInt is returning NaN for CSS property for total values

所以基本上我试图插入样式的表加载数据从一个php文件(php文件是从mysql拉它)和JavaScript显示数据到表中,以及计算所显示的数据的总数/平均值。

我的PHP文件包含我的表的数据。

   $data .= "['$offer_name','$clicks', '$leads', '$$revenue', '$crate%', '$$avgCPA', '$$epc'],";

我的tpl文件包含html/css也包含从PHP加载数据的JavaScript

    {literal}
    <script type="text/javascript">
    $(document).ready(function(){
     $('#dataGrid').dataTable( {
    "fnFooterCallback": function ( nRow, aaData, iStart, iEnd, aiDisplay ) {
        var clicks = 0;
        var downloads = 0;
        var conv = 0;
        var avgCPA = 0;
        var epc = 0;
        var revenue = 0;
        var conv_ = 0;
       for ( var i=0 ; i<aaData.length ; i++ )
        {
            clicks += parseInt(aaData[i][1]);
            downloads += parseInt(aaData[i][2]);
            conv += parseFloat(aaData[i][4]);
            avgCPA += parseFloat(aaData[i][5].substring(1));
            epc += parseFloat(aaData[i][6].substring(1));
            revenue += parseFloat(aaData[i][3].substring(1));
        }
        revenue = Math.round(revenue*100)/100;
        conv_ = (clicks == 0) ? 0 : (downloads/clicks)*100;
        //conv = conv_.toString().match(/^'d+(?:'.'d{0,2})?/);
        conv = Math.round(conv_);
        avgCPA = (downloads == 0) ? 0 : Math.round((revenue/downloads)*100)/100;
        epc = (clicks == 0) ? 0 : Math.round((revenue/clicks)*100)/100;
        var nCells = nRow.getElementsByTagName('th');
        nCells[1].innerHTML = clicks;
        nCells[2].innerHTML = downloads;
        nCells[3].innerHTML = '$'+revenue;
        nCells[4].innerHTML = conv+'%';
        nCells[5].innerHTML =  '$'+avgCPA;
        nCells[6].innerHTML =  '$'+epc;
    },
   {/literal}
   "aaData": [{$data}],
   {literal}          
       });
    });
    </script>
    {/literal}

这是结果,它工作正常,计算正确的数据

        Total/Average   10      10      $48.9       100%     $4.89     $4.89

但是当我尝试添加样式(我已经尝试了内联样式和使用css)到php代码

    $data .= "[';$offer_name','<span class='"tabclicks'">$clicks</span>', '<span class='"tableads'">$leads</span>', '<span class='"tabrevenue'">$$revenue</span>', '<span class='"tabconv'">$crate%</span>', '<span class='"tabcpa'">$$avgCPA</span>', '<span class='"tabepc'">$$epc</span>'],";

表正在加载数据很好意味着样式正在工作,但java脚本返回NaN以返回总数/平均值

    Total/Average       NaN     NaN     $NaN        NaN%        $NaN        $NaN

一旦你在数字周围添加了更多的文本(html),它们就不能被解析为Int。你应该保持数据的整洁,你可以直接把类名添加到nCells元素中。

nCells[1].className = "tabclicks";
// etc...