//第一组input
  <INPUT TYPE="text" id="a" value="6">
  <INPUT TYPE="text" id="a1" value="2">
  <INPUT TYPE="text" id="a2" value="6">
  <INPUT TYPE="text" id="a3" value="8">  //第二组input
  <INPUT TYPE="text" id="b" value="6">
  <INPUT TYPE="text" id="b1" value="3">
  <INPUT TYPE="text" id="b2" value="6">
  <INPUT TYPE="text" id="b3" value="8">  //第三组input
  <INPUT TYPE="text" id="c" value="">
  <INPUT TYPE="text" id="c1" value="">
  <INPUT TYPE="text" id="c2" value="">
  <INPUT TYPE="text" id="c3" value="">
 
  //第四组
   将每一组input放入数组中, 可能有N组INPUT。需求是 第一组input的value值 加上 第二组input的value值  与其他value比较不能重复.
上面的示例,a+b 都是6 ,a2+b2 也是6 所有应该返回false 。
a3+b3 都是8 与其他a*+b*不重复 所有返回true 。不限与2组value比较,可能有多组input比较.
这么说不知道能看明白吗?

解决方案 »

  1.   


    function CompareArray(arrayArgs,n)
    {
        var valsObj={};
    var nval;
    for(var i=0;i<4;i++)
    {
        var val=0;
    for(var j=0;j<arrayArgs.length;j++)
    {
    val+=parseInt(arrayArgs[j][i]);
    }
    if(valsObj[val]==undefined)
      valsObj[val]=1;
    else
       valsObj[val]=2;
    if(i==n)
      nval=val;  
    } if(valsObj[nval]==1)
    return true;
    else
        return false;
    }var a=[6,2,6,8];
    var b=[6,3,6,8]
    var newArray=new Array();
    newArray.push(a);
    newArray.push(b);
     var aa=CompareArray(newArray,0); //比较2
     alert(aa);
      

  2.   

    查不多就这个意思,但是可能有多个数组, 不止a,b两个数组。如果有20个界面就得写20个JS 有点麻烦
      

  3.   

    那个方法可以传多个数组,参数就是数组ar a=[6,2,6,8];
    var b=[6,3,6,8];
    var c=[9,8,5,6];
    var d=[9,8,5,6];
    var newArray=new Array();
    newArray.push(a);
    newArray.push(b);
    newArray.push(c);
    newArray.push(d);
     var aa=CompareArray(newArray,0); //比较2
    我上面写2个,只是举例
      

  4.   

    arrayArgs是一个二维数组, 明白?
      

  5.   

    将同一数组的INPUT设置同一名称,形成控件组。这样简单明了。