我想知道为什么当前的验证无法与复选框输入一起使用。这是代码:

var validation = "";
var values = {};

if ($.trim($("#formDoor").val()) == "") {
    validation = "false";
} else {
    values['formDoor'] = $.trim($("#formDoor").val());
}
if(validation == "false"){
    return false;
}

values["formSubmit"] = "";

<input type="checkbox" name="formDoor[]" id="formDoor" value="A" />Acorn Building


为什么我当前的验证无法与我的复选框一起使用?

最佳答案

复选框val()始终相同,无论是否选中。为了“验证”复选框的状态,例如,可以使用$('#formDoor').is(':checked')

您的代码应如下所示:

var validation = true;
var values = {};

if (!$("#formDoor").is(':checked')) { /* <-- changed condition */
    validation = false;
} else {
    values['formDoor'] = $.trim($("#formDoor").val());
}
if (!validation) {
    return false;
}

values["formSubmit"] = "";

07-24 15:17