繁体   English   中英

使用jQuery遍历表格-计算每一行的单元格

[英]Looping through table with jQuery - calculating cell in for each row

我有一个表,我想在其中计算jQuery的第六列。 我可以按CTR类来标识该列。

    <table class="table">
         <tr>
            <td class="date">08-05-2014</td>
            <td class="spend">615,68</td>
            <td class="impressions">71996</td>
            <td class="clicks">30</td>
            <td class="leads">3</td>
            <td class="CTR">—</td>
            <td class="eCPM">—</td>
            <td class="eCPC">—</td>
            <td class="eCPL">—</td>
         </tr>
         <tr>
            <td class="date">09-05-2014</td>
            <td class="spend">1983,44</td>
            <td class="impressions">398429</td>
            <td class="clicks">115</td>
            <td class="leads">15</td>
            <td class="CTR">—</td>
            <td class="eCPM">—</td>
            <td class="eCPC">—</td>
            <td class="eCPL">—</td>
         </tr>
    </table>

我希望将点击率计算为该给定行的点击次数除以展示次数。 我试图在jQuery中执行此操作,但是代码无法运行:

$( document ).ready(function() {
  $('table tr').each(function(index) {
  $this = $(this)
  var imps = $this.find("td.impressions").val();
  var clicks = $this.find("td.clicks").val();
  var ctr = $this.find("td.CTR").val();
  ctr = parseFloat(clicks) / parseFloat(imps) * 100;
  });
});

我究竟做错了什么? -代码看起来如何?

[更新]由于回复,我已采用该代码。 这仍然无法运行:

$( document ).ready(function() {
  $('tr').each(function(index) {
    $this = $(this)
    var imps = $this.find(".impressions").html();
    var clicks = $this.find(".clicks").html();
    $this.find(".CTR").html() = parseFloat(clicks) / parseFloat(imps);
  });
});

控制台在最后一行告诉我分配的“左侧无效”。

[解决了]

$( document ).ready(function() {
  $('tr').each(function(index) {
    $this = $(this)
    var imps = $this.find(".impressions").text();
    var clicks = $this.find(".clicks").text();
    $this.find(".CTR").text(parseFloat(clicks) / parseFloat(imps) * 100);
  });
});

在td元素上调用val()不会返回内部html。 它返回value属性。 如果您试图在td元素中获取html,请像这样调用它:

$this.find("td.impressions").html();

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM