2012-11-18 125 views
-1

我需要在顯示的表格中求和一列。 我的問題: 如何求和已經計算出其他列的數據的表格列? 我需要使用JavaScript才能做到嗎? 我想在相關列的底部顯示總計。 非常感謝您的建議。我目前的計算數據的如何計算表格列的總和

例如:

echo round(($r->price_sold - $r->shipping - $r->tax - $r->fees) * $r->commission_rate/100,2); 



    $query = " 
SELECT * 
    FROM jos_data_Used_Gear 
    ORDER BY client_name ASC 
    LIMIT 0, 100; 
"; 

$db->setQuery($query); 
$url = $db->loadObjectList(); 


echo '<table id="consignment-table" border="0" align="center" width="3000px">'; 
echo '<tr class="consignment-header"><th class="consignment-client">Client</th>'; 
echo '<th class="consignment-title">Item Name</th>'; 
echo '<th class="consignment-saleprice">Price Sold</th>'; 
echo '<th class="consignment-saleprice">Tax</th>'; 
echo '<th class="consignment-saleprice">Shipping</th>'; 
echo '<th class="consignment-saleprice">Service Fee</th>'; 
echo '<th class="consignment-saleprice">Commission</th>'; 
echo '<th class="consignment-saleprice">Due Client</th>'; 

if(count($url)) { 
    foreach($url as $r) { 
    echo '<tr><td nowrap="nowrap">'; 
    echo $r->client_name; 
    echo '</td><td nowrap="nowrap">'; 
    echo $r->item_title; 
    echo '</td><td class="currency" nowrap="nowrap">'; 
    echo "&#36;"; 
    echo $r->price_sold; 
    echo '</td><td nowrap="nowrap">'; 
    echo "&#36;"; 
    echo $r->tax; 
    echo '</td><td class="currency" nowrap="nowrap">'; 
    echo "&#36;"; 
    echo $r->shipping; 
    echo '</td><td nowrap="nowrap">'; 
    echo "&#36;"; 
    echo $r->fees; 
    echo '</td><td nowrap="nowrap">'; 
    echo round(($r->price_sold - $r->shipping - $r->tax - $r->fees) * $r->commission_rate/100,2); 
    echo '</td><td class="currency" nowrap="nowrap">'; 
    echo "&#36;"; 
    echo round(($r->price_sold - $r->fees - $r->tax - $r->shipping) - (($r->price_sold - $r->fees - $r->tax - $r->shipping) * $r->commission_rate/100) ,2); 
    echo "</td></tr>"; 

    } 
} 

echo '</table>'; 
+0

之前我寫了一個巨大的屁股香草JS回答,您使用的任何庫? Joomla自帶jQuery我想? –

+0

@Asad - Joomla 3.0附帶jQuery。 Joomla 1.5和2.5附帶mootools,但導入jQuery沒有錯;) – Lodder

回答

0

http://jsbin.com/opevet/1/edit

<!DOCTYPE html> 
<html> 
<head> 
<script src="http://code.jquery.com/jquery-1.8.2.min.js"></script> 
<meta charset=utf-8 /> 
<title>JS Bin</title> 
</head> 
<body> 
<table id="consignment-table" border="1" align="center" width="500px"> 
<tr class="consignment-header"><th class="consignment-client">Client</th> 
<th class="consignment-title">Item Name</th> 
<th class="consignment-saleprice">Price Sold</th> 
<th class="consignment-saleprice">Tax</th> 
<th class="consignment-saleprice">Shipping</th> 
<th class="consignment-saleprice">Service Fee</th> 
<th class="consignment-saleprice">Commission</th> 
<th class="consignment-saleprice">Due Client</th> 
    <tr><td nowrap="nowrap">client a 
     </td><td nowrap="nowrap">1 
     </td><td class="currency PriceSold" nowrap="nowrap"> 
      &#36;25.75 
     </td><td nowrap="nowrap">0 
     </td><td class="currency" nowrap="nowrap">0 
     </td><td nowrap="nowrap">0 
     </td><td nowrap="nowrap">0 
     </td><td class="currency" nowrap="nowrap">0 
    </td></tr> 
    <tr><td nowrap="nowrap">client b 
     </td><td nowrap="nowrap">2 
     </td><td class="currency PriceSold" nowrap="nowrap"> 
      &#36;31.44 
     </td><td nowrap="nowrap">0 
     </td><td class="currency" nowrap="nowrap">0 
     </td><td nowrap="nowrap">0 
     </td><td nowrap="nowrap">0 
     </td><td class="currency" nowrap="nowrap">0 
    </td></tr> 
    <tr><td nowrap="nowrap">client a 
     </td><td nowrap="nowrap">3 
     </td><td class="currency PriceSold" nowrap="nowrap"> 
      &#36;15.92 
     </td><td nowrap="nowrap">0 
     </td><td class="currency" nowrap="nowrap">0 
     </td><td nowrap="nowrap">0 
     </td><td nowrap="nowrap">0 
     </td><td class="currency" nowrap="nowrap">0 
    </td></tr> 
    <tr><td nowrap="nowrap">total: 
     </td><td nowrap="nowrap"> 
     </td><td class="currency total1" nowrap="nowrap"> 
     </td><td nowrap="nowrap"> 
     </td><td class="currency" nowrap="nowrap"> 
     </td><td nowrap="nowrap"> 
     </td><td nowrap="nowrap"> 
     </td><td class="currency" nowrap="nowrap"> 
    </td></tr> 
</table> 

<script> 
$(document).ready(function(){ 
    var total1 = 0.0; 
    $('.PriceSold').each(function(){ 
    try{ 
     total1 += $(this).html().replace('$','') * 1; 
    } catch(ex){} 
    }); 
    $('.total1').html('<b>$' + total1+ '</b>'); 
}); 
</script> 

</body> 
</html> 
+0

我很喜歡使用這種方法,但我無法使它工作。你可以進一步解釋它,還是將它插入它應該去的原始代碼中?我可能會在錯誤的地方使用它。謝謝 –

+0

在這裏,我做了一個工作示例:http://jsbin.com/opevet/1/剛剛更換$ $ –

+0

感謝鮑里斯,這是它自己的,但我不能讓它與計算的列一起工作如:echo''; echo「$」; ($ r-> price_sold - $ r->費用 - $ r-> tax - $ r-> shipping) - (($ r-> price_sold - $ r->費用 - $ r->稅 - $ r-> shipping)* $ r-> commission_rate/100),2); –