-1

嗨,我有一种情况,一旦提交单选按钮应保持默认选中状态,并且先前选中的复选框也应禁用。假设现在我为其中两个设置了 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 );

}
4

3 回答 3

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;
}
于 2013-10-10T11:34:16.110 回答
0

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

于 2013-10-10T11:39:31.567 回答
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 );
});

祝你好运!

于 2013-10-10T11:52:55.903 回答