0

我有一个下拉列表,其中包含一些选项和一组复选框,只有当用户在填写表单时选择了一些特定选项时才应该使用这些复选框。

然后,有一组复选框(4 个复选框),其中 3 个具有 class="extrasB" 并且只有当用户选择了 select (5,6) 中的最后 2 个选项时才应该可供选择。

上面每个选中的复选框都会在表单的总成本(字段 scost)中增加一个额外的成本(它的值)。假设用户选择了选项 5,选择了一些复选框,然后决定他想要的选项 3(没有复选框)。这应该会自动取消选中已选中的复选框并更改 scost 的值。我该怎么做呢?

这是一个jsfiddle,上面的所有内容都处于工作状态。

4

2 回答 2

0

要知道是否选中了复选框:

if($('input[name=foo]').is(':checked'))

或者

if($('input[name=foo]').attr('checked'))

取消选中复选框:

$('input[name=foo]').attr('checked', false);

检查复选框:

$('input[name=foo]').attr('checked', true);

要按类(例如 extrasB)获取复选框的引用,您可以执行以下操作:

$("input[type='checkbox'].extrasB").each(function(){
//check or uncheck 
});

干杯!

于 2012-06-26T17:25:46.460 回答
0
$("#symb").change(function() {
    $("input:checkbox").attr('checked', false);
    $(this).getTotal();
})

像这样改变你的功能

编辑:JsFiddle

于 2012-06-26T17:15:48.353 回答