私の理解では、選択したオプションに等しい td を強調表示しようとしています。
var filter = $('select');
filter.change(function () {
var table = $('table');
var rows = $('tr');
var filterValue = $(this).val();
$('tr td').css('color', 'black')
$('tr td').each(function () {
if (filterValue == $(this).text()) { // I have testing for the matches
$(this).css('color', 'red')
}
});
});
を使用してsを反復することtd
を知っておく必要がある重要なポイントは次のとおりです。.each()
ここにjsFiddleがあります
ご理解いただければ幸いです。
アップデート:
1)クリックされている選択のラベル名を取得します
var col = $(this).parent().find('label').text();
2)ここでは、以下の行を使用して列番号を取得しています
var colNumber = col.replace("Column ", "")
これは、選択されている選択の列番号を返します。
3) this の助けを借りてanswer
、列を反復する方法を見つけました。
これで、より深い理解が得られます。
$("table tr td:nth-child(" + colNumber + ")").each(function () {
if (filterValue == $(this).text()) {
$(this).css('color', 'red');
}
});
最初のコメントについては、change
以下のようにイベントをトリガーするだけです
$('select').change();