在JQuery中使用Closest禁用单选按钮

时间:2015-05-20 03:50:26

标签: javascript jquery html

如何使用最近点击中心单击中心的单选按钮来禁用双方的单选按钮?

<div class="pure-u-1 pure-u-md-1-5">
    <span style="white-space: nowrap;">
    <span style="display: inline-block;">
        <label for="COMA">
            <p>
                <input type="radio" value="Yes" name="COM" id="COM0"> 
                Yes &nbsp;&nbsp; 
            </p>
        </label>
    </span>

    <span style="display: inline-block;">
        <label for="COMA">
            <p>
                <input type="radio" checked="checked" value="No" name="COM" id="COM1"> 
                No &nbsp;&nbsp; 
            </p>
        </label>
    </span>

    <span style="display: inline-block;">
        <label for="COMA">
            <p>
                <input type="radio" value="NA" name="COM" id="COM2"> 
                NA &nbsp;&nbsp; 
            </p>
        </label>
    </span>
    </span>
</div>

单击否,我想禁用YES和NA单选按钮,但不能使用任何循环/迭代或禁用静态名称或ID, 但希望Jquery方法最接近或兄弟姐妹做同样的事情。

如何在JQuery中使用它?

2 个答案:

答案 0 :(得分:0)

你可以这样做,基本上你拿最接近的<div>,然后找到<input>类型的所有radio,但是&#34;否&#34;收音机并禁用它们。

$("#COM1").on("click", function() {
    var $no = $(this);
    $no.closest("div").find("input:radio").not($no).attr("disabled", true);
});

请参阅此http://jsfiddle.net/4459rqtp/

答案 1 :(得分:0)

试试这个

<强> DEMO HERE

$('input[type=radio]').on('click',function(){
    $("input:radio").attr('disabled',true);
    $(this).removeAttr('disabled');
});

或只是一行

<强> DEMO

$('input[type=radio]').on('click',function(){
    $("input:radio").not($(this)).attr('disabled',true);
});