0

すべてのフォーム入力をキャプチャするこのコードがあり、機能していますが、jsp に共通のドロップダウンである特定の div 内のものを除外しようとしています。考えられる解決策として、このクラスに div を割り当てました。

元のコード行は次のとおりです。

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

次に、if ステートメントを使用します。

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

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

4

2 に答える 2

3

ifセレクターがフィルタリングを行っている場合は、ステートメント自体を使用する必要はありません。excluded周囲の ではなく、入力自体にcss クラス (たとえば ) を追加できればdiv、以下が機能します。

また:

.notメソッド: (フィドル)

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

または:notセレクター:(フィドル

$('form').find(':input:not(".excluded")').change(function() {
    //your code
});
于 2012-05-02T18:13:17.110 に答える
3

セレクターで使用.notして、クラスで要素を除外できます.selected

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

あるいは

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

ここにフィドルがあります。

于 2012-05-02T17:57:24.287 に答える