Jquery和单选按钮

时间:2010-09-30 02:31:22

标签: javascript jquery css

所以我有一些自定义单选按钮,我用js和一些css创建,现在我想要点击一个自定义单选按钮,将点击的单选按钮设置为选中,订单为未选中,所以它应该是当时只有一个单独的单选按钮。这是我试图做的,但不起作用。

    $('.custom-checkbox li span, .bg-check').live('click', function(){


    $(this).parent().find('span').each(function(){

        $(this).addClass('checked').find('input:radio').attr('checked','');

    });     

    $(this).addClass('checked').find('input:radio').attr('checked','checked');



    return false;
});

有些人请帮助我,我真的不明白。

// LE

function customCheckBox()
{
$('.custom-checkbox li').find('input:radio').hide().wrap('<span />');

$('.custom-checkbox li span, .bg-check').live('click', function(){


    $(this).parent().find('span').each(function(){

        $(this).removeClass('checked').find('input:radio').attr('checked',false);

    });     

    $(this).addClass('checked').find('input:radio').attr('checked',true);

    return false;
});

 }

这是它的工作原理,我找到了所有的无线电输入,并用<span>包裹它们,<span>元素有一些css样式......一个自定义图像。

Html

                    <ul class="custom-checkbox clearfix">
                    <li><input type="radio" name="ext" id="a" value=".ro"/><label for="a">.ro</label></li>
                    <li><input type="radio" name="ext" id="b" value=".com"/><label for="b">.com</label></li>
                    <li><input type="radio" name="ext" id="c" value=".net"/><label for="c">.net</label></li>
                    <li><input type="radio" name="ext" id="d" value=".org"/><label for="d">.org</label></li>
                    <li><input type="radio" name="ext" id="e" value=".info"/><label for="e">.info</label></li>
                    <li><input type="radio" name="ext" id="f" value=".biz"/><label for="f">.biz</label></li>
                    <li><input type="radio" name="ext" id="g" value=".us"/><label for="g">.us</label></li>
                    <li><input type="radio" name="ext" id="h" value=".eu"/><label for="h">.eu</label></li>
                    <li><input type="radio" name="ext" id="i" value=".mobi"/><label for="i">.mobi</label></li>
                    <li><input type="radio" name="ext" id="j" value=".name"/><label for="j">.name</label></li>
                </ul>

1 个答案:

答案 0 :(得分:2)

在jQuery中,“checked”和“selected”属性的值设置为true和false。

假设您的代码没有其他潜在问题,那应该解决它。如果它仍然不起作用,您需要提供更多的上下文,即标记和可能支持代码。

对于第一张照片,您可以像这样调整代码:

$('.custom-checkbox li span, .bg-check').live('click', function(){
  $(this)
    .closest('.custom-checkbox')
      .find('span')
        .removeClass('checked')
      .end()
    .end()
    .addClass('checked')
      .find('input:radio')
        .attr('checked',true)
      .end();
});