Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/411.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 使用Jquery操作表单的复选框_Javascript_Jquery_Checkbox - Fatal编程技术网

Javascript 使用Jquery操作表单的复选框

Javascript 使用Jquery操作表单的复选框,javascript,jquery,checkbox,Javascript,Jquery,Checkbox,我正在尝试做一种对我来说很奇怪的形式 基本概念是,我的表单中有一列产品复选框,如果您选择该产品,则需要选中相对产品复选框 在表格中,我还有两栏是产品的价格和尺寸。我想计算价格和尺寸的数量取决于哪些产品被勾选。到目前为止,我只得到了正在检查的产品的价值,而不是价格和尺寸的价值。另外,如何动态地进行计算 这是html 希望有人能提供帮助,非常感谢。要获得价值,您只需执行以下操作: $(function(){ $("[name='chkProduct']").live('change',fun

我正在尝试做一种对我来说很奇怪的形式

基本概念是,我的表单中有一列产品复选框,如果您选择该产品,则需要选中相对产品复选框

在表格中,我还有两栏是产品的价格和尺寸。我想计算价格和尺寸的数量取决于哪些产品被勾选。到目前为止,我只得到了正在检查的产品的价值,而不是价格和尺寸的价值。另外,如何动态地进行计算

这是html


希望有人能提供帮助,非常感谢。

要获得价值,您只需执行以下操作:

$(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);
            }
        });
    });
});​
但您可能希望添加检查,以确保您正试图添加的是数字,方法是限制输入,或者在单击复选框时进行检查。例如,您可以使用javascripts
parseInt

此外,还可以使用名称或类来标识复选框。这样,您就不必为每个复选框编写更改函数

编辑


我对其进行了修改,使其能够与所有复选框一起工作,并计算总数。

尝试此方法,此解决方案基于您的标记:

$(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')              
        }
    });
});

您如何存储价格和尺寸?你的提琴上没有显示?我只是设置所有的文本框都被禁用。tb1、tb2、tb3、tb4是价格和尺寸?是的,它们是。一栏是价格,一栏是大小。非常感谢您的回复和建议,我会在最后使用它们。然而,这并不是我真正想要的。我希望我能在“presult”文本框中计算价格金额,同样的事情也会发生在大小上。要将其添加到presult,只需编写
$(“#presult”).val(calculatedValue)我也试过了。不管怎样,谢谢你的回复,你的代码只是给了我一些其他的想法。我更新了我的答案,让你明白我的意思。我还对其进行了更改,以便更新所有选中行的总成本。希望能帮上忙。你们怎么能这么顺利地使用is(‘checked’)呢。。。。。。效果非常好。谢谢。