web-dev-qa-db-ja.com

jqueryを使用して、送信、リセット、ボタン以外のすべての入力を選択する方法

Input type = "submit/reset/buttonを除くすべての入力要素を選択しようとしています

私はこのようなセレクターを作成しようとしました:

inputSelector = 'input:not(input[type=button], input[type=submit], input[type=reset]), textarea, select';

ただし、送信ボタンは常に最終選択になるため、これは機能しません。

上記の何が悪いのか考えてください。

ありがとう!

36
frequent

セレクターを次のようにチェーン.not(...)に変更してみてください。

var inputs = $('input, textarea, select')
                .not(':input[type=button], :input[type=submit], :input[type=reset]');

$(inputs).each(function() {
    console.log(this.type);
});

これにより、(おそらく)読みやすくなり、期待どおりに機能するはずです。

58