-1

選択したチェックボックスのIDを取得するにはどうすればよいですか

<div class="form">
    <li id ='preg1'>¿Qué productos de belleza llevas siempre contigo?<br>
        <input type="checkbox" name="vehicle[]" value="hipster" >Bálsamo labial y sombra de un sólo tono.<br>
        <input type="checkbox" name="vehicle[]" value="rocker" >Delineador y esmalte en tonos obscuros.<br>
        <input type="checkbox" name="vehicle[]" value="chic" >El lipstick y las sombras que te quedan increíble y que jamás pasarán de moda. <br>
        <input type="checkbox" name="vehicle[]" value="junkie" >El último lanzamiento de tu marca favorita y el esmalte de uñas que está marcando tendencia<br>
    </li>
    <li id ='preg2'>¿Para una cita cuál es tu look favorito?<br>
        <input type="checkbox" name="vehicle[]" value="hipster">Skinny jeans, maquillaje natural y un accesorio que destaque.<br>
        <input type="checkbox" name="vehicle[]" value="rocker">Chamarra de piel y ojos smoky.<br>
        <input type="checkbox" name="vehicle[]" value="chic">Blusa con olanes y maquillaje en tonos pastel.<br>
        <input type="checkbox" name="vehicle[]" value="junkie">Con las últimas tendencias de pies a cabeza, tanto en outfit como maquillaje.<br>
    </li>
</div>

$(document).ready(function() {
    $('input[type=checkbox]').on('click', function(){ 
      var parent = $(this).parent().attr('id');
      $('#'+parent+' input[type=checkbox]').removeAttr('checked');
      $(this).attr('checked', 'checked'); 
    });
});

http://jsfiddle.net/QSTns/

4

2 に答える 2

0

これにはラジオ ボタンを使用する必要があります。これはラジオ ボタンが設計された目的であり、予期される動作を変更すると、ユーザーが混乱したり迷惑になったりする可能性があるためです。

ここで、(既存のコードを使用して) チェックされたチェックボックスを含むリスト項目の ID を取得することに関心がある場合は、これを使用します。

$('input[type=checkbox]').on('click', function(){
    var parent = $(this).parent().attr('id');
    $('#'+parent+' input[type=checkbox]').removeAttr('checked');
    $(this).attr('checked', 'checked');
    console.log( $(this).parent().attr('id') ); // Gets the ID
});

jsFiddle の例

于 2013-09-12T18:10:00.953 に答える
0

私はthisあなたが今よりよく理解するのに役立つと思います

于 2013-09-12T18:17:03.203 に答える