2011-11-12 11 views
1

現在、私はページに他のdivがない限り正常に動作するコードを持っています。他のdivを追加すると、ラジオを選択して終了します。私は、他のすべてのdivを閉じることなく、開いて閉じるコードを単純に変更するだけです。実際の例をここで見ることができます。ラジオの選択に基づいたDivの表示

http://jsfiddle.net/L5qfn/38/

私はすべてが閉じる方法を示すために、本体の内容全体への「ラッパー」を追加しました。ラッパーを取り出し...私はそれが欲しいのように動作します。助言がありますか?

$('div[class!="formset"]').slideUp("fast"); 

基本的には「クラスformsetを持たない任意のdivを隠す」と言う:

答えて

2

問題があなたの<div id="wrapper">から来ており、このライン:結果を参照してください

$('div .sub-formset').slideUp("fast"); //Slide Up Effect 

$('div[class!="formset"]').slideUp("fast"); //Slide Up Effect 

私はむしろそれを変更することをお勧めhttp://jsfiddle.net/L5qfn/40/

1

問題は、次の行によって引き起こされます。ラッパーdivにはそのクラスがないため、隠されています。私はその行が何をしているのか分かりません(少なくともフィドルでは役に立たないと思われます)ので、問題を広げることができない限り、単に削除することをお勧めします。ここで

updated fiddleです。そのI

$(".sub-formset").slideUp("fast"); 

注:@fflorentとしてコメント

に基づいて更新は言及してい

あなたが実際に.sub-formsetを非表示にしたかったようにあなたは、おそらくにそのセレクターを変更したいので、それは、見えますあなたのフィドルでやったように、属性セレクタを使用するのではなく、クラスセレクタ(.文字)を使用しました。

+0

をはい、私は、同意私はちょうどこの同じ答え、いい仕事のジェームスを投稿しようとしていた!私からのアップ+ 1 :) –

+0

私は彼/彼女は、サブフォームを非表示にしたかったのだと思うので、あなたが選択した場合*はい*、そして*ありません*、そして最後に*たぶん*、あなたがサブフォーム3回 – fflorent

+0

を取得します@ fflorent - ああ、はい、私はあなたが正しいと思います。あなたの答えに+1。 –

関連する問題