Javascript Checkbox(es) onclick/onchange
Javascript Checkbox(es) onclick/onchange
我试图检测何时发生更改复选框(es),但到目前为止已经尝试了onchange, onclick和[只是]单击没有成功。我已经"继承"了复选框的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>
然后针对该对象声明一个'click'函数,该对象本身打算运行另一个'retrieve'函数。后面的'retrieve'函数基于复选框的值执行AJAX调用,并填充另一个控件。
<script>
parent_obj_field1[0].click = function() {
child_obj_field3_retrieve_data();
}
</script>
我已经用'on change'和'onclick'代替了这里的'click',但无济于事。我读过许多文章,其中一篇文章建议我可能必须添加一个事件侦听器……但我不完全确定在我的情况下需要的语法?
当用户单击/取消单击集合中的任何框时,您是否建议我如何触发事件?
感谢编辑
所以为了扩展索拉布·斯里瓦斯塔瓦的评论,我添加了
parent_obj_field1[0].addEventListener('change', function (event) {alert('changed') });
但是当我单击任何框时没有得到警告?我可能误解了这是怎么回事?
将onclick="toggleCheckbox(this)"
添加到每个复选框中。然后使用这个javascript。
<script>
function toggleCheckbox(item)
{
alert(item.id);
}
</script>
在HTML中使用onchange属性,并在其中使用通用函数,并将this
对象作为参数传递。
您可以很容易地在功能中检查复选框是否被选中并进行相应的操作。
请检查下面的代码片段
function change_checkbox(el){
if(el.checked){
alert(el.value+" : checked");
}else{
alert(el.value+" : un-checked");
}
}
<input type="checkbox" name="field1[]" onchange="change_checkbox(this)" id="field1_1" value="80000" /> <label for="field1_1">80000</label>
<input type="checkbox" name="field1[]" onchange="change_checkbox(this)" id="field1_2" value="80001" /> <label for="field1_2">80001</label>
<input type="checkbox" name="field1[]" onchange="change_checkbox(this)" id="field1_3" value="80002" /><label for="field1_3">80002</label>
<input type="checkbox" name="field1[]" onchange="change_checkbox(this)" id="field1_4" value="80003" checked /><label for="field1_4">80003</label>
<input type="checkbox" name="field1[]" onchange="change_checkbox(this)" id="field1_5" value="80004" /><label for="field1_5">80004</label>
<input type="checkbox" name="field1[]" onchange="change_checkbox(this)" id="field1_6" value="80005" /><label for="field1_6">80005</label>
JQuery Change应该可以做到。
当元素的值发生变化时,change事件被发送给元素。此事件仅限于<input>
元素,<textarea>
盒子和<select>
元素。对于选择框、复选框和单选按钮,该事件在用户用鼠标进行选择时立即触发,但对于其他元素类型,该事件会延迟到元素失去焦点时才触发。
$( ".change-selector" ).change(function() {
//execute your code
});
<input class="change-selector" type="checkbox" name="field1[]" id="field1_1" value="80000" /> <label for="field1_1">80000</label>
<input class="change-selector" type="checkbox" name="field1[]" id="field1_2" value="80001" /> <label for="field1_2">80001</label>
<input class="change-selector" type="checkbox" name="field1[]" id="field1_3" value="80002" /><label for="field1_3">80002</label>
<input class="change-selector" type="checkbox" name="field1[]" id="field1_4" value="80003" checked /><label for="field1_4">80003</label>
<input class="change-selector" type="checkbox" name="field1[]" id="field1_5" value="80004" /><label for="field1_5">80004</label>
<input class="change-selector" type="checkbox" name="field1[]" id="field1_6" value="80005" /><label for="field1_6">80005</label>
- jquery onclick or onchange on different elements
- 如何在onChange之前触发onClick事件(即使值已更改)
- jQuery .clone changes onchange to onclick
- 如何获取 onchange 以设置 onclick=window.open(url)
- 通过复选框上的onClick或onChange触发表单填写
- onclick or onchange in a select
- 在 html GlobalEventHandlers 中已弃用 onChange 或 onClick
- Jquery 日期选择器删除 onclick 和 onchange 并添加默认属性
- JQuery是否用于onclick/onchange
- Wordpress TinyMCE Strips OnClick & OnChange (need jQuery
- 单选按钮onchange/onclick事件无法正常工作
- 如何使用xmlhttp检索onClick/onChange数据
- 将带有onclick()的ul转换为带有onchange()的select
- onchange for id后,Onclick函数不再工作
- Javascript:checkbox onchange/onclick函数不起作用
- Ajax onchange禁用第二个Ajax调用onclick
- 以编程方式调用onclick和onchange不能按预期工作
- Javascript Checkbox(es) onclick/onchange
- onClick将不能与onChange同时工作
- 如何将下拉列表onchange事件转换为列表onclick事件