我想知道为什么我当前的验证不适用于我的复选框输入。这是代码:
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"] = "";
关于Javascript 验证为 trim val(),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23019044/