我正在将此代码运行到我的jquery脚本中,使用此方法我只能检测更高或更低但不在它们之间的值。
例如:第一个语句低于1.
如何更改它并在0-1之间进行。
1-29之间的第二个陈述......
第三项声明29-49等等......
代码工作正常,只需要介于两者之间,因为具有更高价值的语句会覆盖所有其他代码......有什么想法吗?
=IF(NOT(ISBLANK(B6)),VLOOKUP(Schedule!B6,WorshipLeaders!A:B,2),"")
答案 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) {