Javascript 将相同的事件处理程序添加到单选按钮和复选框
我正在尝试使用一个函数来添加所选复选框和单选按钮的值。我已经创建了一个可以添加复选框值的函数和一个单选按钮的函数,但是我很难将这两个函数组合成一个工作函数。我认为我的问题在于将radio和checkbox元素都与Javascript 将相同的事件处理程序添加到单选按钮和复选框,javascript,jquery,checkbox,radio-button,Javascript,Jquery,Checkbox,Radio Button,我正在尝试使用一个函数来添加所选复选框和单选按钮的值。我已经创建了一个可以添加复选框值的函数和一个单选按钮的函数,但是我很难将这两个函数组合成一个工作函数。我认为我的问题在于将radio和checkbox元素都与关联。click() 我的代码可以在这里看到: HTML是: <input type="checkbox" value="1" />test 1<br/> <input type="checkbox" value="2" />test 2<br
关联。click()
我的代码可以在这里看到:
HTML是:
<input type="checkbox" value="1" />test 1<br/>
<input type="checkbox" value="2" />test 2<br/>
<input type="checkbox" value="3" />test 3<br/>
<input type="radio" name="test" value="1" />test 4
<input type="radio" name="test" value="2" />test 5
<div id='sum'></div>
实际上,您正在使用,并且只将事件处理程序添加到第二个jQuery对象。相反,在jQuery构造函数的第一个参数中使用逗号组合实际的选择器,类似于CSS选择器:
$("input:checkbox, input:radio").click(function() {
…
});
实际上,您正在使用,并且只将事件处理程序添加到第二个jQuery对象。相反,在jQuery构造函数的第一个参数中使用逗号组合实际的选择器,类似于CSS选择器:
$("input:checkbox, input:radio").click(function() {
…
});
给你答案
给你答案
jQuery(document).ready(function($) {
var sum = 0;
$("input:checkbox, input:radio").click(function() {
sum = 0;
$("input:checkbox:checked").each(function(idx, elm) {
sum += parseInt(elm.value, 10);
});
$("input:radio:checked").each(function(idx, elm) {
sum += parseInt(elm.value, 10);
});
$('#sum').html(sum);
});
});