muf*_*fin 4 javascript forms validation jquery submit
我正在使用Yii php开发一个应用程序,我正在使用jquery进行表单验证.我有一个表格说CrossingMatrixForm,其中包含其输入元素的复选框.
但是,这些复选框是根据条目动态创建的.
为了更好地理解它,我正在制作一个交叉矩阵,基本上是一个表,有行(女性)和男性(列),并在有交叉点的单元格中定义复选框.字面上是男性和女性的交叉矩阵.
但是,如果没有定义为交叉的男性和女性,那么对于验证,它不应该允许用户提交.
我的问题是我如何知道表格是否没有元素?
如果有复选框元素,我如何捕获用户是否已检查过其中一个元素?非常感谢!
我试过下面,但似乎没有抓住它,形式仍然提交,我想知道.
$('#crossingMatrixForm').submit(function() {
$(":input").each(function() {
if ($(this).val() === empty()) {
alert("form empty!");
return false;
}
});
});
Run Code Online (Sandbox Code Playgroud)
您可以查看表单中是否至少存在一个复选框并进行检查
$('#crossingMatrixForm').submit(function(){
if (!$(this).find("input:checked").length) {
alert("form empty!");
return false;
}
});
Run Code Online (Sandbox Code Playgroud)
如果你想消除"没有复选框存在"和"至少存在一个复选框,但没有复选存在"之间的歧义,你可以使用$(this).find(":checkbox")前者和.filter(":checked")后者.在这两种情况下,用于.length查看是否存在至少一个控件:
$('#crossingMatrixForm').submit(function(){
var checkboxes = $(this).find(":checkbox");
if (!checkboxes.length) {
alert("form empty!");
return false;
}
else if (!checkboxes.filter(":checked").length) {
alert("none selected!");
return false;
}
});
Run Code Online (Sandbox Code Playgroud)