造型收音机,一次只能检查1个

时间:2012-06-28 20:10:49

标签: jquery html

我通常知道为无线电输入分配一个名称属性只允许一次检查一个,但我用jQuery重新输入我的输入,这将不再有效。我在jQuery方面还不够有效,无法理解如何克服这个问题。

HTML

​<input type="radio" class="radio" name="one" />
<input type="radio" class="radio" name="one" />​​​​​​​

的jQuery

$('.radio').each(function() {
    $(this).hide();

    var $image = $("<img class='checkbox' src='assets/images/layout/checkbox/unchecked.png' />").insertAfter(this);

    $image.click(function() {
        var $checkbox = $(this).prev('.radio');
        $checkbox.prop('checked', !$checkbox.prop('checked'));

        if($checkbox.prop("checked")) {
            $image.attr("src", "assets/images/layout/checkbox/checked.png");
        } else {
            $image.attr("src", "assets/images/layout/checkbox/unchecked.png");
        }
    });
});

我认为在更改图像之前,我需要更改条件语句以确定是否检查具有特定名称的输入(示例中为“1”)。不幸的是,我的所有尝试都失败了。

1 个答案:

答案 0 :(得分:1)

对于每个单选按钮,获取它的name属性。然后,在复选框图像上单击,获取具有name的所有单选按钮元素并取消选中它们,然后将选中的值应用于单击的那个。

Example using your jsFiddle