Javascript 复选框 onclick/onchange

标签 javascript checkbox onclick click onchange

我试图检测复选框何时发生更改,但到目前为止已尝试使用 onchange、onclick 和 [just] click 但没有成功。我已经“继承”了复选框的 HTML(通过 Smarty 模板构建),这些复选框是按照此处构建的:-

<input type="checkbox" name="field1[]" id="field1_1" value="80000" />
<label for="field1_1">80000</label>
<input type="checkbox" name="field1[]" id="field1_2" value="80001" />
<label for="field1_2">80001</label>
<input type="checkbox" name="field1[]" id="field1_3" value="80002" />
<label for="field1_3">80002</label>
<input type="checkbox" name="field1[]" id="field1_4" value="80003" checked />
<label for="field1_4">80003</label>
<input type="checkbox" name="field1[]" id="field1_5" value="80004" />
<label for="field1_5">80004</label>
<input type="checkbox" name="field1[]" id="field1_6" value="80005" />
<label for="field1_6">80005</label>

在 javascript 中,我按照此处声明了复选框的对象:-

<script>
parent_obj_field1 = document.getElementsByName('field1[]');
</script>

然后,我针对该对象声明一个“单击”函数,该函数本身旨在运行另一个“检索”函数。后面的“retrieve”函数根据复选框的值执行 AJAX 调用并填充另一个控件。

<script>
parent_obj_field1[0].click = function() { 
  child_obj_field3_retrieve_data(); 
}
</script>

我已将此处显示的“单击”替换为“更改时”和“单击时”,但无济于事。我读过很多文章,其中一篇建议我可能必须添加事件监听器...但我不完全确定我的情况所需的语法?

您能否建议我如何在用户单击/取消单击集合中的任何框时触发事件?

谢谢

编辑

因此,为了扩展 Saurabh Srivastava 评论,我添加了

parent_obj_field1[0].addEventListener('change', function (event) {alert('changed') });

但是当我单击任何框时没有收到警报?我可能误解了这是如何工作的?

最佳答案

onclick="toggleCheckbox(this)" 添加到每个复选框。然后使用这个 JavaScript。

<script>

function toggleCheckbox(item)
 {
   alert(item.id);
 }

</script>

关于Javascript 复选框 onclick/onchange,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39898484/

相关文章:

javascript - JQuery调用PHP函数问题

javascript - CKFinder 3 添加了 extra/in 路径

javascript - Mocha 的 beforeEach() 和 did() 函数不起作用

javascript - 从 0 到 x 的 CSS 宽度转换导致内容压缩

javascript - 当两个复选框位于同一页面上使用相同的类名时,如何使用 nightjs 选中我想要的复选框?

javascript - 将 onclick 更改为以变量作为参数的函数

javascript - 单击 img border = #color - 多个图像 - 一次只需要突出显示 1 个图像

javascript - 使用 jquery 更改复选框的样式

javascript - 如何在javascript中检查复选框

javascript - 在 For 循环中将 onClick 应用于元素数组