将类别应用于不同列的最高值

发布于 2024-12-08 07:57:37 字数 2019 浏览 0 评论 0原文

我有一些代码已经可以工作,但我想更改我的页面设计,在执行此操作时,添加类脚本不起作用。这是我的设计:

<tr>
    <td>Item 1</td>
    <td>&pound;<?php echo $row1['item1']; ?></td>
    <td>&pound;<?php echo $row2['item1']; ?></td>
    <td>&pound;<?php echo $row3['item1']; ?></td>
    <td>&pound;<?php echo $row4['item1']; ?></td>
    <td>Item 2</td>
    <td>&pound;<?php echo $row1['item2']; ?></td>
    <td>&pound;<?php echo $row2['item2']; ?></td>
    <td>&pound;<?php echo $row3['item2']; ?></td>
    <td>&pound;<?php echo $row4['item2']; ?></td>
    <td>Item 3</td>
    <td>&pound;<?php echo $row1['item3']; ?></td>
    <td>&pound;<?php echo $row2['item3']; ?></td>
    <td>&pound;<?php echo $row3['item3']; ?></td>
    <td>&pound;<?php echo $row4['item3']; ?></td>
</tr>

这是我得到的 jQuery 代码:

 <script type='text/javascript'>
  //<![CDATA[ 
  $(window).load(function(){
  (function($) {
    $.fn.max = function(callback) {
        var max = null,
            maxIndex = null;

        this.each(function() {
            var value = callback.call(this);
            if (+value === value) {
                if (!max || value > max) {
                    max = value;
                    maxIndex = $(this).index();
                }
            }

        });
        return max !== null ? this.eq(maxIndex) : $();
    };
}(jQuery));


$('tr').each(function() {
    $(this).children('td').max(function() {
        var value = +$(this).text().substr(1);
        if (!isNaN(value)) {
            return value;
        }
    }).addClass('green bold');
});
  });
  //]]> 
  </script>

这有效,但仅适用于每个 tr,这意味着它突出显示每行中的最高值,而我需要它突出显示每行中的最高值组(第 1、2 和 3 项)。

可以更改代码以使其起作用吗?

I have some code that works already but I'd like to change my page design, in doing this the add class script doesn't work. Here's what I've got for the design:

<tr>
    <td>Item 1</td>
    <td>£<?php echo $row1['item1']; ?></td>
    <td>£<?php echo $row2['item1']; ?></td>
    <td>£<?php echo $row3['item1']; ?></td>
    <td>£<?php echo $row4['item1']; ?></td>
    <td>Item 2</td>
    <td>£<?php echo $row1['item2']; ?></td>
    <td>£<?php echo $row2['item2']; ?></td>
    <td>£<?php echo $row3['item2']; ?></td>
    <td>£<?php echo $row4['item2']; ?></td>
    <td>Item 3</td>
    <td>£<?php echo $row1['item3']; ?></td>
    <td>£<?php echo $row2['item3']; ?></td>
    <td>£<?php echo $row3['item3']; ?></td>
    <td>£<?php echo $row4['item3']; ?></td>
</tr>

Here's the jQuery code I've got:

 <script type='text/javascript'>
  //<![CDATA[ 
  $(window).load(function(){
  (function($) {
    $.fn.max = function(callback) {
        var max = null,
            maxIndex = null;

        this.each(function() {
            var value = callback.call(this);
            if (+value === value) {
                if (!max || value > max) {
                    max = value;
                    maxIndex = $(this).index();
                }
            }

        });
        return max !== null ? this.eq(maxIndex) : $();
    };
}(jQuery));


$('tr').each(function() {
    $(this).children('td').max(function() {
        var value = +$(this).text().substr(1);
        if (!isNaN(value)) {
            return value;
        }
    }).addClass('green bold');
});
  });
  //]]> 
  </script>

This works but only for each tr, meaning it highlights the highest value in each row, where as I need to it to highlight the highest value through each group (item 1, 2 and 3).

Can the code be changed for this to work?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

別甾虛僞 2024-12-15 07:57:37

尝试在不首先循环 TR 的情况下循环遍历 TD:

$('table').find('td').max(function() {
    var value = +$(this).text().substr(1);
    if (!isNaN(value)) {
        return value;
    }
}).addClass('green bold');

Try looping through the TDs without first looping through the TRs:

$('table').find('td').max(function() {
    var value = +$(this).text().substr(1);
    if (!isNaN(value)) {
        return value;
    }
}).addClass('green bold');
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文