2016-07-31 2 views
0

チェックボックスをオフにして最初にチェックした後で再度チェックするのを助けてください。チェックした後にチェックボックスを無効にする

これまで私が行ってきたことです。 $(この)として

<label class="checkbox-inline"><input type="checkbox" id="checked" onclick="check();"></label> 

     <script type="text/javascript"> 
     function check() { 
      if($("#checked").is(":checked")){ 
      alert("Thanks for Attending"); 
      $(this).attr('disabled','disabled'); 
      } 
      } 
    } 
    </script> 
+0

可能な複製[チェックボックスを無効にしてjQueryを使用してチェックを外す](http://stackoverflow.com/questions/21108486/disabling-check-box-and-uncheck-it-using-jquery) – Idan

答えて

0

このスニペットを確認してください。

function check() { 
 
    if($("#checked").is(":checked")){ 
 
    alert("Thanks for Attending"); 
 
    //Code to disable checkbox after checked 
 
    $('#checked').attr('disabled', true); 
 
    } 
 
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 

 
<label class="checkbox-inline"><input type="checkbox" id="checked" onclick="check();"></label>

+0

これは完璧に動作します。 –

0

変更

$(this).attr('disabled','disabled'); 

to 

$('#checked').attr('disabled', true); 

ないあなたが関数本体の内側にあるので、チェックボックスを指します。

0

バニラJSでの代替あなたはそうすることができませんでしたしながら、jQueryを使ってそれを組み合わせるしようとしているので、:

function check() { 
    var el = document.getElementById("checked"); 

    if (el.checked) { 
     el.disabled = true; 
    } 
} 

あなたはまだ.prop()にjQueryのバージョンのスティックが必要な場合用法:

function check() { 
    var $el = $("#checked"); 

    if ($el.is(":checked")) { 
     $el.prop("disabled", true); 
    } 
} 
関連する問題