未捕获错误:语法错误,无法识别的表达式:input:checkbox [name = ninja_forms_field_57 [terms]]

时间:2013-10-20 22:42:40

标签: javascript jquery

我正在尝试限制可以在表单中检查的复选框的数量,但是我收到以下错误:

未捕获错误:语法错误,无法识别的表达式:输入:复选框[name = ninja_forms_field_57 [条款]]

以下是我正在使用的Javascript:

// Main Category
var $checkboxes_to_limit2 = $("#taxonomy_47").find("input:checkbox[name=ninja_forms_field_47[terms]]");
$checkboxes_to_limit2.live("change", function() {
    if($checkboxes_to_limit2.filter(":checked").length >= 3) {
    $checkboxes_to_limit2.not(":checked").attr("disabled","disabled");
    }
    else {
        $checkboxes_to_limit2.removeAttr("disabled");
    }
});

2 个答案:

答案 0 :(得分:7)

您需要将name属性视为字符串,所以

input:checkbox[name=ninja_forms_field_47[terms]]

应该是

input:checkbox[name='ninja_forms_field_47[terms]']

答案 1 :(得分:0)

您需要一些额外的单引号:

var $checkboxes_to_limit2 =
  $("#taxonomy_47").find("input:checkbox[name='ninja_forms_field_47[terms]']")