2012-05-02 7 views
0

すべてのフォーム入力をキャプチャするこのコードはありますが、動作していますが、特定のdivのものを除外しようとしています。 jspのものに共通するドロップダウン。私は可能な解決策としてこれのためにクラスにdivを割り当てました。ここでjQuery 1.4を使用してspecficクラス以外のすべてのフォーム入力をキャプチャする方法

は、コードの元の現用回線である:if文

$(':input', document.formName).change(function() { ... 

その後、私が使用します。

if($('.className:not(.selected)')){ 
do something ... 

が、if文は、右何とかではありません。これを行う最善の方法は何ですか? 1つのステートメントですべてを組み合わせる方法があるか、またはifブロックが正しい方法であるかどうか、もしそうなら、クラスを除外する正しい構文は何ですか?

+1

DOM構造を表示する必要があります。 – gdoron

+0

私はクライアントがそれを感謝するとは思わない。 –

答えて

3

あなたはここにfiddleだクラス.selected

$(':input', document.formName).not('.selected').change(function() { ... 

あるいは

$(':input:not(".selected")', document.formName).change(function() { ... 

で要素を除外するために、あなたのセレクタに.notを使用することができます。

+0

+1。私は遅すぎた! :) –

3

セレクタがフィルタ処理を実行している場合は、ifステートメント自体を使用する必要はありません。あなたはCSSクラスを追加することができれば、入力そのものではなく、周囲のdivに、以下に働くだろう(excludedが言う)

次のいずれかの

.not method:(Fiddle

$('form').find(':input').not('.excluded').change(function() { 
    //your code 
}); 

:not selector:(Fiddle

$('form').find(':input:not(".excluded")').change(function() { 
    //your code 
}); 
関連する問題