最近、ChromeプラグインAPIで作業しており、Webサイトを管理するのが楽になるプラグインを開発したいと考えています。
今、私がしたいことは、特定のチェックボックスがチェックされたときにイベントを発生させることです。このウェブサイトは私のものではないので、コードを変更できないため、Chrome APIを使用しています。主な問題の1つは、IDがあるのではなく、名前があることです。 「名前」の特定のチェックボックスがチェックされたら関数を起動できるかどうか疑問に思っていました。
このマークアップを使用していると仮定します。
<input type="checkbox" name="checkbox">
JQueryのような querySelector を使用します。
var checkbox = document.querySelector("input[name=checkbox]");
checkbox.addEventListener( 'change', function() {
if(this.checked) {
// Checkbox is checked..
} else {
// Checkbox is not checked..
}
});
$('input[name=checkbox]').change(function(){
if($(this).is(':checked')) {
// Checkbox is checked..
} else {
// Checkbox is not checked..
}
});
OPにjQuery
タグが表示されないため、ここにjavascriptのみのオプションがあります。
document.addEventListener("DOMContentLoaded", function (event) {
var _selector = document.querySelector('input[name=myCheckbox]');
_selector.addEventListener('change', function (event) {
if (_selector.checked) {
// do something if checked
} else {
// do something else otherwise
}
});
});
[〜#〜] jsfiddle [〜#〜]を参照してください
HTMLに次のようなチェックボックスがある場合:
<input id="conducted" type = "checkbox" name="party" value="0">
javascriptを使用してこのチェックボックスにEventListenerを追加するには、関連付けられたjsファイルで次のようにします。
checkbox = document.getElementById('conducted');
checkbox.addEventListener('change', e => {
if(e.target.checked){
//do something
}
});