2016-04-08 5 views
-1

これを行うには何か良い方法がありますか?より少ない行で?これを行うには何か良いものがありますか?

$('#hider').click(function(){ 
    $(".name_A").hide(); 
    $(".name_B").hide(); 
    $(".name_C").hide();   
    }); 

私は多くの名前、A、B、C、(100名)を...置くだけで50

私はjQueryの上で新たなんだボタンを非表示にしたいです。私はフィルタを試みたが、私のためにうまく動作しない。

+0

がちょうどSTARTSWITHセレクタを使用します^ = name _] ')。hide();これは、 'name_'で始まるクラスを持つすべての要素を非表示にします。 – DinoMyte

+0

@DinoMyte 50の残りの部分が非表示にする必要のない 'name'で始まらない限り。また、このコンベンションが単にサンプルのためのものであるか、実際のクラス名が使用されているかによって異なります。 – Spidey

+0

@Nimesh:OPはどの50を隠そうとしているかについて言及していません。そこで、パターンで指定されたものに基づいて、パターン 'name_ [alphabet]'を持つクラスを持つ要素を非表示にしたいと仮定します。 – DinoMyte

答えて

-1

あなたが使用して、複数のクラス名を分離することができ,

$('#hider').click(function(){ 
    $(".name_A, .name_B, .name_C").hide(); 
}); 

しかし、100種類のクラス名を持つ、その後、個別に名前を付けることによって、それらの50を隠し、それが正しいプログラミングのですか? CSSでは、エレメントに複数のクラス名を割り当てることもできます。

注:関連するHTML/CSSの詳細を知らなくても、これ以上の解決策がないかどうかわかりません。

あなたは、私はより良いあなたの質問に答えるために詳細が必要なjQueryのセレクタの詳細ヘルプ
W3Schools - jQuery Selectors

+0

セレクタで開始を使用して個々のセレクタを宣言しないようにするだけで、 $( '[class^= name _]')。hide() – DinoMyte

+0

@DinoMyteこれを共有してくれてありがとう、これを使わなかったので気づかなかった。とにかくOPが彼の使用ごとにチェックして適用できるように、より詳細をカバーするリンクを追加しました。 – Spidey

+0

これは本当にシンプルなコードなので、うまくいきますが、多くの行があります。 あなたの方法ははるかに良いです。どうもありがとうございます。 :) – Riba

0

については、以下のリンクを参照することができます。あなたのHTMLはどのように見えますか?あなたは何を隠そうとしていますか?最初の50、最後の50?平均時間で

は、ここにあなたが両方を行うことができるものである:

HTMLの例:

JavaScriptの例
<button id="hide-btn">Hide 50 names</button> 
<ul class='name-list'> 
    <li>Name 1</li> 
    <li>Name 2</li> 
    <li>Name 3</li> 
    ... 
</ul> 

:$( '[クラス:

var $hideFirstBtn = $('#hide-first-btn'), 
     $hideLastBtn = $('#hide-last-btn'), 
     $nameList = $('.name-list'), 
     $nameListLength = $nameList.find('li').length; 

$hideFirstBtn.on('click', function() { 
    for (var i = 0; i < 50; i++) { 
     $nameList.find('li').eq(i).hide(); 
    } 
}); 

$hideLastBtn.on('click', function() { 
    for (var i = 0; i < 51; i++) { 
     $nameList.find('li').eq($nameListLength - i).hide(); 
    } 
}); 
+0

ありがとうございます。.hide()はもっと簡単な作業です。コードをシンプルにしたいと思います。 fo(var i = 0)などはまだ私のために働いていません...しかし、おかげで:) – Riba

+0

for(var i - 0) 'はあなたのためにまだ働いていないのですか? – justinledouxweb

関連する問題