2017-01-13 7 views
-2

クラスを持つテーブルがあるページがあります。この表は、ページ上で複数回表示されることがあります。私は各インスタンスで同じjquery関数を実行する必要があります。 jqueryでどうすれば実現できますか????ここで同じクラスのjquery関数

は私のjQueryのです:

jQuery(window).load(function() { 
    if(jQuery('.ezfc-summary-table tr:eq(2) td:eq(1)').text()=='1 layer'){ 
    jQuery('.ezfc-summary-table tr:eq(5)').hide(); 
    jQuery('.ezfc-summary-table tr:eq(6)').hide(); 
    jQuery('.ezfc-summary-table tr:eq(8)').hide(); 
} 
}); 

@devlinのcarnate - 私は、TDのの1からテキストを取り出し、別のクラスにそれを追加することで、別のもの、(製品タイトルをやろうとしています)、これも複数回現れます。ここでは私が試したことはありますが、最初に発見したテキストだけを取り出し、それを次のすべてのクラスに追加します。

$(document).ready(function() { 
    $('.ezfc-summary-table').each(function(i, obj) { 
    var table = $(this); 
    if (table.find('tr').eq(2).find('td').eq(1).text() == '1 layer') { 
     table.find('tr').eq(5).hide(); 
     table.find('tr').eq(6).hide(); 
     table.find('tr').eq(8).hide(); 
var getpartname = $('.ezfc-summary-table tr:eq(0) td:eq(1)').text(); 
    $('.product-title').append('<span style="padding-left: 5px;">'+getpartname+'</span>'); 
    } 
    }); 
}); 

この問題も解決できますか... ???事前に

おかげ

+0

あなたは隠したい複数のクラス名を持っていますか? – Loaf

+1

[jQueryと同じクラスの要素をループする可能性のある重複](http://stackoverflow.com/questions/4735342/jquery-to-loop-through-elements-with-the-same-class) –

+0

'を使用しています。 '.on( 'load'、...) 'または' $(document).ready(...)'を使用してください。 – Barmar

答えて

0

あなたはjQuery$.each()を使用して、テーブルに割り当てられたクラスを反復処理すると「1層」のテキスト条件が満たされているかどうかに基づいて行を非表示にすることができます

ここ
$(document).ready(function() { 
    $('.ezfc-summary-table').each(function(i, obj) { 
    var table = $(this); 
    if (table.find('tr').eq(2).find('td').eq(1).text() == '1 layer') { 
     table.find('tr').eq(5).hide(); 
     table.find('tr').eq(6).hide(); 
     table.find('tr').eq(8).hide(); 
    } 
    }); 
}); 

がありますフィドルのデモ:https://jsfiddle.net/zephyr_hex/f45umhkp/2/

+0

まさに私が必要なもの。どうもありがとう。 –

+0

@ PCB-Tech:これがあなたの質問に答えるならば、あなたは私の答えの上にあるチェックマークのアイコンを使ってそれを解決策としてマークすることができます。 –

+0

私の更新された質問、ありがとう! –

関連する問題