对表格单元格执行计算

时间:2010-08-16 14:17:27

标签: jquery html-table

我有一个php脚本,可以在表格中生成价格表。生成表的示例:

<table>
  <thead>
    <tr>
    <th></th>
    <th>100</th>     
    <th>+100</th>           
    </tr>
  </thead>
  <tbody>
    <tr>
           <th>A5<span>210x148</span></th>
           <td>€65.00</td>
           <td>€8</td>
        </tr>
        <tr>
           <th>A4<span>297x210</span></th>
           <td>€75.00</td>
           <td>€16</td>
        </tr>       
  </tbody>
</table>

基本上我想做的是按一下按钮来增加增值税。因此:从价格单元格中获取值,添加21%并替换原始值。如果再次单击该按钮,则会重新启动。

我的问题是我不熟悉jquery,无法弄清楚如何提取和重写每个cel的值。如果我向一个单元格添加一个id,我可以得到我想要的效果,但是我似乎无法弄清楚如何为所有单元格做到这一点。我无法工作的另一件事是剥离货币符号进行计算。

非常感谢任何帮助。

2 个答案:

答案 0 :(得分:2)

一种方法是给那些'价格'单元格一个类名

<td class='price'>

然后循环遍历该元素集合:

$('price').each(function(index) {
     vat = $(this).text().replace("$", "") * 1.21;
     $(this).text() = vat;
  });

未经测试但希望它传达了这个想法。

答案 1 :(得分:1)

您可以在每个表格单元格中添加一个类,您可以在其中计算增值税的价格,如

<td class='priceCell'>

然后在第一个按下按钮

$('priceCell').each(function(index) {
     $(this).text() = calculateVAT($(this).text());
  });

其中calculateVAT是计算增值税的函数javascript。由于此解决方案对可以舍入的数字执行浮点计算,另一种可能的优雅解决方案是添加一个隐藏的列,其中添加了增值税的总计,而按钮只需在两列之间切换