0

http://jsfiddle.net/Lijo/Hb28u/4/にあるjqueryスクリプトのHTMLテーブルがあります。テーブル行を強調表示するための4つのjQueryアプローチがあります。最後の2つのアプローチは機能しません、なぜそれらは機能しないのですか?平易な英語での説明を探しています。

HTML

<table id="table1">
<tr> <td>N</td><td>Y</td></tr>  
<tr class="y_n"><td>Q</td><td>N</td></tr>  
</table> 

 <br/><br/>

<table id="table2">
<tr> <td>N</td><td>Y</td></tr>  
<tr class="y_n"><td>Q</td><td>N</td></tr> 
</table> 

<br/><br/>

<table id="table3">
<tr> <td>N</td><td>Y</td></tr>  
<tr class="y_n"><td>Q</td><td>N</td></tr>  
</table> 

 <br/><br/>

<table id="table4">
<tr> <td>N</td><td>Y</td></tr>  
<tr class="y_n"><td>Q</td><td>N</td></tr>  
 </table> 

 <script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jquery/1.4.1/jquery.js">

脚本

$(document).ready(function()
{


//Apporach 1  - Highlight First Row

$('#table1 tr td:eq(0)').each(function() {
if ($(this).text() == 'N') {
    $(this).parent().css('background-color', 'Orange');
}
});


//Apporach 2 -  - Highlight Second Row

$('#table2 tr td:gt(0)').each(function() {
if ($(this).text() == 'N') {
    $(this).parent().css('background-color', 'Orange');
}
});


//Apporach 3 - Highlight Second Row

$('#table3 tr td:eq(1)').each(function() {
if ($(this).text() == 'N') {
    $(this).parent().css('background-color', 'Orange');
}
});


//Apporach 4 Highlight All Rows

$('#table4 tr td)').each(function() {
if ($(this).text() == 'N') {
    $(this).parent().css('background-color', 'Orange');
}
});

});
4

2 に答える 2

2

今ではjsfiddleで動作します

$('#table3 tr td:eq(3)').each(function() { // note that you search for td no. 3 and not 1
   if ($(this).text() == 'N') {
      $(this).parent().css('background-color', 'Orange');
   }
});


//Apporach 4 Highlight All Rows
$('#table4 tr td').each(function() { // note that in your example you have a ) at the end of the selector
    if ($(this).text() == 'N') {
        $(this).parent().css('background-color', 'Orange');
    }
});
于 2012-09-19T10:30:10.350 に答える
0
 //Apporach 3 - Highlight Second Row
$('#table3 tr:eq(1) td').each(function() { //second row
if ($(this).text() == 'N') {
    $(this).parent().css('background-color', 'Orange');
}
});


    //Apporach 4 Highlight All Rows
    $('#table4 tr td').each(function() { //here you had a unnescessary ')'
    if ($(this).text() == 'N') {
        $(this).css('background-color', 'Orange');
    }
    });

あなたがそれを手に入れたことを願っています:)

于 2012-09-19T10:30:07.990 に答える