jquery - 基于类使用 jQuery 设置文本颜色

标签 jquery css

我在做一些看起来应该很简单的事情时遇到了困难。如果值小于零,我只想将文本颜色设置为红色。

因此,在第一个函数中,我获得了值,并且在“成功”后,如果余额 < 0,我想将颜色设置为红色。简单。

function getTimeBankBalance(staffid){

  if(staffid == undefined){
    var staffid = $('#staffid').val();
  }

  $.ajax({
    url: 'get-timebankbalance.php',
    type: 'GET',
    data: {
      cache: false,
      staffid: staffid
    },
    success: function(balance) {
      $('.timebankbalance').html(roundToTwo(balance) + " Hours");
      if(balance < 0) $('.timebankbalance.').css('color','red');
    },
    error: function(){
      genericPrompt("Error","Unable to calculate staff time bank balance","errormessage-inline");
    },
  });
}

我使用类选择器的原因是因为我有两个地方显示余额。

无论如何,当页面加载完成时,就会调用上面的函数。

$(function(){
  getTimeBankBalance();
});

但是好像不行。所以我认为这可能是一个计时问题,这似乎是因为当我在调试器中暂停代码执行时,文本变成红色。如果没有调试器,它会保持黑色。

然后我尝试将代码移动到一个单独的函数中

function setBalanceColour(balance){
  if(balance < 0){
    $('.timebankbalance.').css('color','red');
  }
}

并将该函数调用延迟几秒钟......

 setTimeout(setBalanceColour(balance),5000);

这也没有帮助。那么这是怎么回事呢?为什么它不改变颜色?

最佳答案

就像我们在评论中讨论的那样,$('.timebankbalance.') 中有一个额外的句点 .

所以这一行:

if(balance < 0) $('.timebankbalance.').css('color','red');

看起来像:

if(balance < 0) $('.timebankbalance').css('color','red');

关于jquery - 基于类使用 jQuery 设置文本颜色,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55641576/

相关文章:

javascript - JS滚动链接-使用linkify-如何定位特定类?

javascript - 排行榜。将工具提示置于所有元素之上

html - Winjs:将某些工具栏控件放置在左侧

javascript - Jquery仅选择具有类的第一个元素而不是全部

jquery - 当父div有超过三个子div时求和div

javascript - 将鼠标悬停/单击 DIV 列表

javascript - 单击 RadioButton 调用 javascript 函数

jquery - 下拉菜单 CSS 或 jQuery

html - 网站缩放和固定宽度 - 没有任何效果

html - 用 tex-anchor : end 包装文本