0

当未选中组并提交表单时,我正在使用以下代码突出显示单选按钮字段。

我想这样做,以便从已检查的单选按钮组的标签元素中删除错误类。

有人可以通过修改下面的代码来告诉我如何做到这一点吗?

  checkRadios : function (form) {
    var $form = $(form),
        radioGroups = $form.find(".radiogroup")
        radios = radioGroups.find("input");

radios.each(function () {
  if ($radios.is(':checked')) {
    $(this).closest("tr")
           .find("label")
           .removeClass("error");
  } else {
    $(this).closest("tr")
           .find("label")
           .addClass("error");

    $(this).on("change", function () {
      checkRadios(form);
    });
  }
});
4

2 回答 2

1

我认为这会做

function checkRadios() {
    var form = $('form')
    var grps = $('.radiogroup')
    grps.each(function(i, v){
        if($('input:checked', v).length > 0){
            $(v).closest('tr').find("label").removeClass('error');
        }else{
            $(v).closest('tr').find("label").addClass('error');
        }
    });
}

演示:小提琴

于 2013-02-28T03:37:39.567 回答
1

试试这个代码:

radioGroups.each(function () {
    if ($(this).find("input:checked").length > 0) {
       $(this).closest("tr")
           .find("label")
           .removeClass("error");
    } else {
       $(this).closest("tr")
           .find("label")
           .addClass("error");
    }
});

这个想法是循环分组并查找每个组中是否有任何选中的收音机:

$(this).find("input:checked").length > 0
于 2013-02-28T03:39:03.260 回答