2012-02-05 2 views
2

У меня возникло множество проблем с моей функцией. Функция должна проверять все флажки, если флажок в первой строке отмечен и наоборот. Это то, что я писал:Проверка всех флажков

$("#meetingspanel").on("click", ":checkbox", function() { 
    if ($(this).parent().parent() == ($("tr:first"))) { 
    chboxcondition++; 
    if (chboxcondition % 2 !=0) { 
     $(":checkbox").each(function() { 
     $(this).attr('checked', true); 
     }); 
    } else { 
     $(":checkbox").each(function() { 
     $(this).attr('checked', false); 
     }); 
    } 
    } else 
    return false; 
}); 

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

Это как флажок Создание идет

$("<td style=border:0px><input type='checkbox' id='btncb'></td>").insertAfter($("td:nth-child(6)")); 
+0

$ (": checkbox"). Каждый из них получит КАЖДЫЙ флажок ... возможно, что-то вроде этого будет работать: $ ("tr: first: checkbox") – Cristy

+0

почему Вы добавляете этот прослушиватель событий только к первому флажку, сохраняя все отличительные проблемы внутри прослушивателя событий? – kontur

+0

Как ваша разметка выглядит как – Rafay

ответ

0

проблема вы размещаете флажок, который вы хотите проверить (проверить все флажки или нет) в той же панели.

решение, поместите каждый другой флажок в div, скажем «checkBoxDiv» и наш идентификатор идентификатора div в функции выше. Это не влияет на контрольный флажок

+0

Неплохая причина, почему некоторые сборки для этого флажка внутри таблицы, вот он: $ (" ") .insertAfter ($ (" td: nth-child (6) ")); и работает от другой функции –