JQuery在两个文本值之间找到

时间:2016-09-01 22:49:56

标签: jquery text

我正在将此代码运行到我的jquery脚本中,使用此方法我只能检测更高或更低但不在它们之间的值。

例如:第一个语句低于1.

如何更改它并在0-1之间进行。

1-29之间的第二个陈述......

第三项声明29-49等等......

代码工作正常,只需要介于两者之间,因为具有更高价值的语句会覆盖所有其他代码......有什么想法吗?

=IF(NOT(ISBLANK(B6)),VLOOKUP(Schedule!B6,WorshipLeaders!A:B,2),"")

4 个答案:

答案 0 :(得分:2)

我认为你可能会误解正在发生的事情。因为你有一个"否则如果"第二个条件只有在第一个条件失败时才会得到最好的测试 - 所以在你的例子中测试<只有当值>> 1时才会发生。因此,我认为你的代码是正确的,但可能会有更微妙的运行方式。如果没有剩下的代码,很难说出问题出在哪里。

在我原来的回答中,我错过了平等案例的微妙之处 - 因此,正在研究穆罕默德的答案,但保持简单,代码应该是:

$(document).ready(function(){
    $('.table td').each(function(){
        var ThisNumber = parseInt($(this).text());
        if( ThisNumber  <= 1) {                           // less than 1
            $(this).css('background-color','#fff');
        }
        else if(ThisNumber <=29) {   //between 1 - 29
            $(this).css('background-color','#9A271C');
        }
        else if(ThisNumber <=49) {   // between 29-49
            $(this).css('background-color','#BA650E');
        }
    });
});

即只需改变&#39;&lt;&#;到&#39;&lt; =&#39;

答案 1 :(得分:2)

如何更改它并在0-1之间进行 不会是&lt; = 1

1-29之间的第二个陈述 应该是&lt; = 29,因为1和以下将首先触发并关闭if。

第三项声明29-49等等...... 将是&lt; = 49,因为如果它小于29,前面的if触发器会触发......我不是专家,但我知道一点。

答案 2 :(得分:1)

您需要使用&&并在使用.text()时我认为您还需要parseInt();

$(document).ready(function(){
        $('.table td').each(function(){
            var ThisNumber = parseInt($(this).text());
            if( ThisNumber  < 1) {                           // less than 1
                $(this).css('background-color','#fff');
            }
            else if( ThisNumber  >= 1 && ThisNumber <29) {   //between 1 - 29
                $(this).css('background-color','#9A271C');
            }
            else if( ThisNumber >= 29 && ThisNumber <49) {   // between 29-49
                $(this).css('background-color','#BA650E');
            }
        });
    });

答案 3 :(得分:1)

通过说“介于0-1”和“介于1-29之间”,你会忘记1本身!如果您想要包含一个数字(意思是从0到并包括 1),请添加<=而不是<,例如

if($(this).text() <=1) {

否则,如果你想在“0-1”之间明确地不计算低于0的数字,你可以这样指定

if($(this).text() >=0 && $(this).text() <1) {