表单验证多维选择框

时间:2013-02-21 05:36:58

标签: javascript validation

这是该作品的截图。

“颜色”下拉列表具有子颜色。现在颜色的名称是color[]。在这种情况下,您可以看到有3种颜色。第一种颜色有1种子颜色,第二种颜色有3种子颜色,颜色3有1种子颜色

enter image description here

我需要检查一些验证。

  1. 任何颜色,子颜色都不应该是'SELECT'(在图像中所有下拉列表 被选为颜色)
  2. 所有3种颜色的父百分比(第一种颜色在图像中缺少百分比框,但在现场)应该是100
  3. 每种颜色的子百分比也应该是100%,例如颜色2有3种子颜色,3种颜色有20,40,40作为子百分比
  4. 我无法在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解决方案也欢迎

    谢谢

1 个答案:

答案 0 :(得分:0)

jQuery的:

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