使用Jquery操作窗体的复选框
Using Jquery to manipulate checkbox of a form
我正在尝试做一个对我来说很奇怪的表单。
基本概念是,我的表单中有一列产品复选框,如果您选择该产品,则需要选中相对产品复选框。
在表格中,我还有另外两栏是产品的价格和尺寸。我想根据勾选的产品来计算价格和尺寸。到目前为止,我只获得了正在检查的产品的价值,而不是价格和尺寸的价值。另外,如何动态地进行计算。
这是html,http://jsfiddle.net/DDEzm/2/
希望有人能帮忙,非常感谢。
试试这个,这个解决方案是基于您的标记:
$(function(){
$('#cb1').live('change',function(){
if ($(this).is(':checked')) {
var val = 0;
val = parseInt($('#tb1').val(), 10) + parseInt($('#tb2').val(), 10)
$('#presult').val(val)
} else {
$('#presult').val('0')
}
});
});
演示
获取值所需的操作如下:
$(function(){
$("[name='chkProduct']").live('change',function(){
var totalCost = 0;
$("[name='chkProduct']").each(function(i){
if($(this).attr("checked")) {
var price = $(this).parent().next().find("[name='price']").val();
var size= $(this).parent().next().next().find("[name='size']").val();
totalCost = totalCost + (price * size);
$("#presult").val(totalCost);
}
});
});
});
但是,您可能需要添加复选框,以确保您试图添加的是数字,可以通过限制输入,也可以在单击复选框时进行复选。例如,您可以使用javascript parseInt
。
此外,您可以有一个名称或类来标识复选框。这样就不必为每个复选框编写一个更改函数。
编辑
我对它进行了修改,使它能与所有复选框一起工作,并计算总数。
相关文章:
- 如何在angularJS中编辑时,如果DB中的值为true,则设置复选框,如果值为false,则取消选中复选框
- 正在验证8个真/假复选框或复选框中的2个
- 为复选框javascript指定两个值
- 如何在单击复选框后调用控制器方法
- 从复选框和Selects-KnockoutJS中获取值的总和
- 选中多个具有相同名称的复选框
- 使用Jquery选择或取消选择ListView中的所有复选框
- Jquery表单验证插件-如果选中复选框,如何在提交时执行某些操作
- 使用$.ajax发布多个复选框
- AngularJS单选筛选不适用于Name、Description和Field4复选框值
- 使用jquery选中/取消选中单个复选框
- 使用Jquery操作窗体的复选框
- 根据窗体上的Picklist字段值,选中并取消选中复选框
- 单击单选按钮或复选框时,窗体滚动到顶部
- 窗体弹出,禁用子点击以关闭阻止复选框
- 禁用窗体的现有复选框
- 选择窗体中作用于两个不同下拉框的所有复选框
- 获取多个窗体中所有选定复选框的值
- Javascript复选框仅适用于1个窗体
- 如何根据复选框选择禁用窗体