Использование jQuery для обработки флажков - PullRequest
0 голосов
/ 28 октября 2009

В настоящее время я использую метод catch all для всех входов в моей форме, когда он обрабатывается jQuery.

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

Что мне нужно сделать, это посмотреть, является ли какой-либо из этих входов флажком, на данный момент единственное, что я могу найти, это сказать, проверено ли поле или нет.

Любая помощь будет принята с благодарностью.

Ответы [ 4 ]

4 голосов
/ 28 октября 2009
$('input[type=checkbox]').each(function(){
   // stuff
});

Или еще лучше

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

см. На http://docs.jquery.com/Selectors/checkbox

4 голосов
/ 28 октября 2009

Если вы хотите узнать, установлен ли флажок внутри этой функции:

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

(Да, вы также можете сказать $(this).attr('type')==='checkbox', если вы один из тех людей, которые не хотят использовать синтаксис jQuery для всего. Но на самом деле, в чем смысл? Это будет только медленнее и менее читабельным. )

Если вы хотите найти только флажки, для этого есть специальный фильтр:

$(':checkbox').each(function() {
    ...
});
3 голосов
/ 28 октября 2009

Вы можете сделать:

$.each($(":input[type=checkbox]"), function() {
    // stuff
}
0 голосов
/ 28 октября 2009

попробуйте это в .each функции

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

UPDATE

$.fn.tagName = function() {            
    return this.attr("type");          
}                                      
  $(document).ready(function() {       
    alert($('#testElement').tagName());
    });                           
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...