2017-10-07 15 views
0

チェックボックスがオンの場合、JavaScriptコードを実行するにはどうすればよいですか?チェックボックスにチェックされたイベントにバインドする方法

チェックボックスが

<input type="checkbox" id="Maksja_piiratudes" name="Maksja_piiratudes" 

onfocus="if(typeof this.ischanged=='undefined') this.ischanged=false" onblur="summarefresh()" onclick="dataChanged(this)"> 

として定義されて私は

$(function() { 
    $("#Maksja_piiratudes").on("change", function() { 

alert('checkbox is checked'); 

}); // end on change 
}); // end $ 

を試みたが、チェックボックスがオフになっている場合にも実行されます。 checkgoxが選択されている場合にのみコードを実行する方法は?

ブートストラップ3、jquery、jquery UIが使用されます。

+0

1行がありませんでした。編集した質問と不足している行を追加しました – Andrus

答えて

2

チェックボックス入力のcheckedプロパティを使用できます。

$(function() 
{ 
    $('#Maksja_piiratudes').on('change', function() 
    { 
     if (this.checked) 
     { 
      alert('checkbox is checked'); 
     } 
    }); 
}); 

編集:

私はより多くのバニラスタイルを好む。..ので、念のために、誰かがそれを必要とする:

document.querySelector('#Maksja_piiratudes') 
     .addEventListener('change', function() 
{ 
    if (this.checked) 
    { 
     alert('checkbox is checked!'); 
    } 
}, false); 
+0

'event.target === this' – Andreas

+0

これはおそらくページのすべてのチェックボックスにバインドされています。 htmlで定義された特定のチェックボックスのコードを実行するにはどうすればいいですか?このチェックボックスには、id = "Maksja_piiratudes" name = "Maksja_piiratudes" ' – Andrus

+0

という固有のid属性とname属性があります。コードを編集する前の例です。最後の更新を参照してください。 – Kai

0

したい場合は、この

$(function() { 
    $("#Maksja_piiratudes").on("change", function() {  
     if ($(this).prop("checked") == true) { 
      alert('checkbox is checked'); 
     } //end if 
    }); // end on change 
}); // end $ 

をお試しくださいすべてのチェックボックスでグローバルにするには、以下を使用します:

$(function() { 
    $("input[type='checkbox']").on("change", function() {  
     if ($(this).prop("checked") == true) { 
      alert('checkbox is checked'); 
     } //end if 
     else { 
      alert('checkbox is unchecked'); 
     } 
    }); // end on change 
}); // end $ 
関連する問題