Jquery: снимите флажок с радиокнопки (в группе из 1 радиокнопки)

У меня есть этот код, чтобы снять отметку с группы радиокнопок:

$('form[id^="fm-form"]')
     .find("input.groupOfButtons:radio:checked")
     .prop('checked',false);

Это прекрасно работает, когда в группе есть как минимум два радиокнопки.

Если есть только один, сценарий не работает.

Как я могу отключить радиокнопку, когда есть только 1 радиокнопка?


person TutanRamon    schedule 27.09.2012    source источник
comment
Не могли бы вы опубликовать свою разметку, когда у вас есть один и два радиобокса? Вы применили класс .groupOfButtons также к одиночным радиоблокам?   -  person Fabrizio Calderan    schedule 27.09.2012
comment
у меня отлично работает - jsfiddle.net/5ftAj проверьте свои селекторы   -  person Zoltan Toth    schedule 27.09.2012


Ответы (2)


Проверьте эту программу, она работает для меня

        <html>
            <head>
                <script type="text/javascript" src="http://code.jquery.com/jquery-1.8.2.min.js"></script>
                <script type="text/javascript">
                    $(document).ready(function()
                    {
                        $("#Check").click(function()
                        {                    
                            $("#radio").prop('checked', true);
                        });

                        $("#UnCheck").click(function()
                        {                    
                            $("#radio").prop('checked', false);
                        });
                    });
                </script>
            </head>
            <body>
                <input type="radio" id="radio" />
                <button id="Check">Check</button>
                <button id="UnCheck">Un Check</button>
            </body>
        </html>
person Hearaman    schedule 27.09.2012

Попробуйте использовать removeProp вместо prop

.removeProp('checked')
person coolxeo    schedule 27.09.2012
comment
Это работает в первый раз, но если элемент повторно выбран щелчком пользователя, это не сработает снова. Мне повезло больше, используя .prop('checked', false) - person Tom; 31.07.2014