使用jquery比较两个元素,根据结果更改类

时间:2012-10-09 04:26:09

标签: javascript jquery html

我正在尝试从数据库中获取结果,将其插入<li>并突出显示从这两个HTML <li>元素中获得的两个值中的较大值。我已经制作了jsfiddle,但我不确定如何根据比较这两个值的结果让addClass()更改<li>

4 个答案:

答案 0 :(得分:1)

这就是我的所作所为:

$(function()
{
      var val1 = parseInt($('.leader1').text(), 10);
      var val2 = parseInt($('.leader2').text(), 10);
      if(val1 > val2){
        **$('.leader1').attr('class','.li.leader');** 
      }
      else{
            **$('.leader2').attr('class','.li.follower');**
      }
 }
 );

答案 1 :(得分:1)

<强>拨弄

http://jsfiddle.net/syKWz/6/

<强>固定

  • css class li.leader,无效7位数字
  • 逻辑应添加leader&amp; follower比较对li

<强>码

$(function() {
    var val1 = parseInt($('.leader1').text(), 10);
    var val2 = parseInt($('.leader2').text(), 10);
    if(val1 > val2) {
        $('.leader1').addClass('leader'); 
        $('.leader2').addClass('follower');
    } else {
        $('.leader1').addClass('follower'); 
        $('.leader2').addClass('leader');
    }
});

答案 2 :(得分:0)

以下是使用toggleClass签名的示例,该签名接受函数作为参数。

$(function() {
    $("li").toggleClass(function() {
        if(parseInt($(this).text(), 10) >
           parseInt($(this).siblings().text(), 10)) {
               return "leader";
           } else {
               return "follower";
           }
    });
});

答案 3 :(得分:0)

试试这个

$(function()
{
  var val1 = parseInt($('.leader1').text(), 10);
  var val2 = parseInt($('.leader2').text(), 10);
  if(val1 > val2){
    $('.leader1').addClass('leader'); 
  }
    else{
        $('.leader2').addClass('follower');
   }
}

);

jsfiddle:http://jsfiddle.net/syKWz/5/