获取已检查属性集的按钮

时间:2013-10-10 11:26:58

标签: javascript jquery jquery-ui

您好我有一个场景,其中提交的单选按钮应保持默认选中状态,并且还应禁用之前选中的复选框。假设现在我为其中两个设置了checked =“checked”。问题是我如何检查这两个的已检查属性,以便我可以禁用它们。任何人都可以帮我处理代码。

<div class="element">
    <input id="product_id---0" type="radio" value="2-2" checked="checked" data-second_price="0.00" data-first_price="1000.00" name="product_id">
    <input id="product_id---1" type="radio" checked="checked" value="3-3" data-second_price="0.00" data-first_price="2000.00" name="product_id">
    <input id="product_id---2" type="radio" value="4-4" data-second_price="0.00" data-first_price="3000.00" name="product_id">
    <input id="product_id---3" type="radio" value="5-5" data-second_price="0.00" data-first_price="4000.00" name="product_id">
</div>

我尝试了以下代码,但它无效。感谢您提前提供任何帮助。

$product_ids = document.getElementsByName( 'product_id' );


for( i=0; i < $product_ids.length; i++ ) {
    alert( $product_ids[i].checked );

}

3 个答案:

答案 0 :(得分:1)

您正在使用的radio输入只能在群组中选择一个,如果您想要选择两个选项,则需要输入checkbox

Working Fiddle

$product_ids = document.getElementsByName('product_id');

for( i=0; i < $product_ids.length; i++ ) {
    $product_ids[i].disabled = $product_ids[i].checked;
}

答案 1 :(得分:0)

您可以在要呈现为已禁用的复选框上使用属性,即disabled

答案 2 :(得分:0)

正如Oswaldo所说,你使用的是错误的输入类型,它应该是type="checkbox"我假设你用jQuery标记了这个问题,我们可以在答案中使用它。以下是您要找的内容:

http://jsfiddle.net/PHNQG/2/

HTML

<div class="element">
    <input id="product_id---0" type="checkbox" value="2-2" checked="checked" data-second_price="0.00" data-first_price="1000.00" name="product_id">
    <input id="product_id---1" type="checkbox" checked="checked" value="3-3" data-second_price="0.00" data-first_price="2000.00" name="product_id">
    <input id="product_id---2" type="checkbox" value="4-4" data-second_price="0.00" data-first_price="3000.00" name="product_id">
    <input id="product_id---3" type="checkbox" value="5-5" data-second_price="0.00" data-first_price="4000.00" name="product_id">
</div>
<button id="disable">Disable</button>
<button id="enable">Enable</button>

JS

$('#enable').click(function(){
    $( ".element input:checked" ).attr( "disabled", false );
});

$('#disable').click(function(){
    $( ".element input:checked" ).attr( "disabled", true );
});
祝你好运!