質問

現在、jQueryで処理中のフォーム上のすべての入力に対してcatch allメソッドを使用しています。

$.each($(':input'),function()
{
    //stuff                 
});

できるようにする必要があるのは、これらの入力のいずれかがチェックボックスであるかどうかを確認することです。現時点で見つけることができるのは、フィールドがチェックされているかどうかです。

ご協力いただければ幸いです。

役に立ちましたか?

解決

それがその関数内のチェックボックスであるかどうかを知りたい場合:

$(':input').each(function() {
    if (this.type==='checkbox')
        ....
});

(ええ、jQueryの使用に夢中になっている人の場合、 $(this).attr( 'type')=== 'checkbox' と言うこともできます。すべての構文。しかし、本当に、ポイントは何ですか?それは遅くなり、読みにくくなります。)

チェックボックスのみを検索する場合、そのための特別なフィルターがあります:

$(':checkbox').each(function() {
    ...
});

他のヒント

$('input[type=checkbox]').each(function(){
   // stuff
});

またはさらに良い

$('input:checkbox').each(function(){
   // stuff
})

http://docs.jquery.com/Selectors/checkbox

できること:

$.each($(":input[type=checkbox]"), function() {
    // stuff
}

.each 関数でこれを試してください

if($('#myId').attr('type') == 'checkbox')
alert ('checkbox');

更新

$.fn.tagName = function() {            
    return this.attr("type");          
}                                      
  $(document).ready(function() {       
    alert($('#testElement').tagName());
    });                           
ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top