当jQuery处理时,我正在对表单上的所有输入使用catch all方法。

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

我需要做的是看看这些输入中是否有任何一个是复选框,目前我唯一可以找到的是说明是否检查了该字段。

非常感谢任何帮助。

有帮助吗?

解决方案

如果你想知道它是否是该功能内的复选框:

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

(是的,你也可以说 $(this).attr('type')==='checkbox'如果你是那些使用jQuery的人之一一切的语法。但实际上,重点是什么?它只会变得更慢,更不易读。)

如果您只想找到复选框,则会有一个特殊的过滤器:

$(':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 function

中试试
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