最近我一直在使用Chrome插件API,我希望开发一个插件,让我更轻松地管理网站。
现在我想要做的是在选中某个复选框时触发事件。 由于此网站不属于我,因此我无法更改代码,因此我使用的是Chrome API。其中一个主要问题是,有一个名称而不是ID。我想知道一旦选中带有'name'的复选框,我是否可以启动该功能。
由于
答案 0 :(得分:69)
假设您正在使用此标记:
<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..
}
});
答案 1 :(得分:40)
由于我在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
答案 2 :(得分:0)
如果您的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
}
});
答案 3 :(得分:-3)
你需要这样的东西:
$("input[name='checkbox_name']").click(function() {
...
});