I次のHTMLコードを持っている:ページのロードでなし:jQuery - クラスの最後の桁を使用して複数の関連するクラスを見つけるか?
<fieldset>
<legend><span>Contact Details</span> <span class="edit1">Edit</span><span class="hide1">Hide</span></legend>
<div>
<!--content-->
</div>
</fieldset>
<fieldset>
<legend><span>Contact Details</span> <span class="edit2">Edit</span><span class="hide2">Hide</span></legend>
<div>
<!--content-->
</div>
</fieldset>
クラス「hide1」と「hide2」とのスパンが表示されるように設定されています。私は次の操作を実行しようとしています。このコードの中で
は、jQueryのを使用して、:
- EDIT1がクリックされた場合、このスパンは、隠れになり、クラス「hide1」と関連したスパンが見えるようになります。
- これはコード内の他のすべてのスパンで同じにする必要があります。 edit2とhide2。さらに編集と非表示のクラスを追加したい場合、関数はこれも処理できます。 edit3とhide3など。
これまでのところ、クリックして編集したスパンを見つけることができました。私は、関連する「隠す」クラスを得るのに苦労しています。誰も私を助けてくれますか?ここに私のjQueryの機能は、これまでである - などの選択を支援するためにIDを使用しても、アンダースコア、すなわち、私はいくつかの方法でクラス名を区切るためにため
var spans = $("#myIntForm").find("span[class^='edit'],span[class^='hide']");
spans.click(function() {
var $this = $(this);
spans.filter("span[class^='hide']").hide();
if($this.attr('class').substr(0,4)=='edit')
{
var visible = $this.filter("span[class^='"+$this.attr('class').substr(0,4)+"']");
visible.hide();
//find the class 'hide' with same ending number as class 'edit' and display it.
var invisible;
}
});
これはコード内に最後の「隠す」スパンしか表示していないようです。 – Jonathan
修正しました。編集を参照してください^^ – jammypeach
素晴らしい - ありがとう:-) – Jonathan