0
if(bmi < 18.5 )
{
    element1.backgroundColor =  colour;
    $(document).ready(function(){
      $(".C_underArrow").show();
       });
}

else if (bmi>= 18.5 && bmi<= 24.9)
{
  element2.backgroundColor =  colour;
   $(document).ready(function(){    
     $(".C_normalArrow").show();
    });
}

テーブルの行に色を付けようとしています。

入力 "bmi" に応じて、どの条件を使用するかを決定します。たとえば、最初の条件を使用し、次に element1 に色を付けます。

入力値を変更すると..別の状態になり、要素2に色が付けられます..要素1の色が保持されます。

新しい入力値ごとに 1 つの行に色を付けたい

どうすれば解決できますか?

編集: HTML コードの追加

<table class="C_resultTable">


<tr id="id1">
<td >
<img id="ID_underArrow" class="C_underArrow" width="30" height="30" src="right-arrow.gif" />
</tr>
</td>


<tr id="id2">
<td >
<img id="ID_normalArrow" class="C_normalArrow" width="30" height="30" src="right-arrow.gif" />
</tr>
</td>


<tr id="id3">
<td >
<img id="ID_overArrow" class="C_overArrow" width="30" height="30" src="right-arrow.gif" />
</tr>
</td>


<tr id="id4">
<td >
<img id="ID_ObeseArrow" class="C_ObeseArrow" width="30" height="30" src="right-arrow.gif" />
</td>
</td>       

</table>
4

1 に答える 1

0

現在色付けされている行であるグローバル変数に保存できます。colouredElement(私のコードスニペットのvar )

jQueryなし

if (colouredElement != null)
    colouredElement.backgroundColor = '';

if(bmi < 18.5 )
{
    colouredElement = element1;
    element1.backgroundColor =  colour;
    $(document).ready(function(){
      $(".C_underArrow").show();
    });
}    
else if (bmi>= 18.5 && bmi<= 24.9)
{
     colouredElement = element2;
     element2.backgroundColor =  colour;
     $(document).ready(function(){  
      $(".C_normalArrow").show();
    });
}

jQueryで

if ($colouredElement != null)
    $colouredElement.css({ backgroundColor: ''});

if(bmi < 18.5 )
{
    $colouredElement = $('table.C_resultTable tr:nth-child(1)');
    $colouredElement.css({backgroundColor: colour});
    $(document).ready(function(){
      $(".C_underArrow").show();
    });
}    
else if (bmi>= 18.5 && bmi<= 24.9)
{
    $colouredElement = $('table.C_resultTable tr:nth-child(2)');
    $colouredElement.css({backgroundColor: ''});
     $(document).ready(function(){  
      $(".C_normalArrow").show();
    });
}
于 2012-07-04T16:51:48.377 に答える