2013-04-22 172 views
1

我有一个具有相同ID的多个输入类型文本的表单。
所以我想通过JQuery检查提交如果任何这些输入具有相同的值。
这可能吗?如果是这样,请帮助。
注意:忘记相同的ID。假设每个人都有不同的ID。如何检查呢?检查具有相同ID的输入文本是否具有相同的值

+7

ID必须是唯一的。 – undefined 2013-04-22 12:57:01

+0

为什么你给所有的输入都使用相同的ID?这是错误的! – 2013-04-22 12:58:18

+0

将您的ID移动到课程或数据ID – Lars 2013-04-22 12:59:13

回答

1

这是一般的过程中,你可以遵循

  1. 枚举你喜欢的所有字段比较
  2. 增量字段的值的计数器
  3. 当你到达终点,检查是否有项目具有计数> 1

例如,下面的代码你想要做什么:

$('#check').click(function(){ 
    var idx = {}; 
    $('.unique').each(function(){ 
     var val = $(this).val(); 
     if(val.length) 
     { 
      if(idx[val]){ 
       idx[val]++; 
      } 
      else{ 
       idx[val] = 1; 
      } 
     } 
    }); 
    var gt_one = $.map(idx,function(e,i){return e>1 ? e: null}); 
    var isUnique = gt_one.length==0 
    alert(isUnique); // Do something useful 
}); 

现场示例:http://jsfiddle.net/6VfET/

+0

好的,谢谢,你知道jQuery中的一种方式来返回我有多少文本输入?因为表格是动态的。 – user1852196 2013-04-22 13:10:02

+0

NVM,我想通了,谢谢。 – user1852196 2013-04-22 13:12:24