繁体   English   中英

表单验证多维选择框

[英]Form validation multidimensional select boxes

这是作品的屏幕截图。

颜色下拉菜单具有子颜色。 现在颜色的名称是color[] 对于这种情况,您可以看到有3种颜色。 第一种颜色具有1个子颜色,第二种颜色具有3个子颜色,而颜色3具有1个子颜色

在此处输入图片说明

我需要检查一些验证。

  1. 任何颜色,子颜色均不应为“ SELECT”(在图像中,所有下拉菜单均已选择颜色)
  2. 所有3种颜色的父百分比(第一种颜色缺少图像中的百分比框,但在网站上)应完全为100
  3. 每种颜色的子百分比也应精确到100%,例如,颜色2具有3个子颜色,而3种颜色具有20、40、40作为子百分比

我在验证JS中的表单时遇到问题。

我尝试过frm["color[]"].length ,它给了我三个,现在第一种颜色的子颜色具有color[1][]名称。 如果我得到了color[]的长度并对其进行循环。

for (i = 0; i < frm["color[]"].length; i++){
    k = i+1;
    console.log( frm["color["+k+"][]"] ); 
}

这行得通。

现在有3种颜色, console.log(frm["color[]"].length)返回3,如果只有1种颜色,它将返回我下拉菜单中的项目数,例如2k +

如果您有任何疑问,请告诉我也欢迎使用jQuery解决方案

谢谢

jQuery的:

$('select[name^="color["]').each(function() {
  if ($(this).val()=="SELECT") {
    alert(this.name.replace(/[^color0-9]/gi," ")+"is not selected");
    return false;
  }
});

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM