1

我有一个表格,其中有很多可见和隐藏的单选按钮。我只需要获取可见的单选按钮并进行一些操作。我正在尝试下面的代码。但它不起作用。有人可以帮助我吗?

$('#submitbutton').click(function () {
    var returnVal = true;
    $.each($('.input-container[data-validation=required]'), function (idx, group) {
        $(group).next('ul.innererrormessages').remove();
        var unchecked = $(group).find(':radio').filter(':visible');
        if (!unchecked.is(':checked')) {
            var title = unchecked.attr('title');
            $(group).after('<ul class="innererrormessages"><li>' + title + '</li></ul>');
            returnVal = false;
        }
    });
});

一组有 4-5 个单选按钮。我需要检查组中的任何单选按钮是否被选中。所以我不确定上面的代码是否真的在检查组中的任何一个单选按钮是否被选中。因为即使在检查了所有单选按钮之后,它也会将 returnVal 设为 false。如果我尝试提醒returnVal,首先它给出true,然后它给出所有false。

4

1 回答 1

5

您可以只制作一个选择器并跳过该if :checked语句

var unchecked = $(group).find(':radio:checked:visible');

现在,与其运行if循环,不如each在这些上运行迭代并进行操作。

于 2013-11-13T13:52:46.527 回答