数组遍历判断两个输入框之间是否有输入重复的值!
1数组遍历判断两个输入框之间是否有输入重复的值!
今天在工作的过程,遇到一个这样的问题。有两个输入框,
用户可输入多值,用逗号隔开,例如:1,2,3,4
第二个输入框也是一样,但是第一输入框是必填的,现在就是要取这两个输入框逗号隔开的值而且不能重复。
以下为我实现的脚本代码,欢迎指正。
今天在工作的过程,遇到一个这样的问题。有两个输入框,
用户可输入多值,用逗号隔开,例如:1,2,3,4
第二个输入框也是一样,但是第一输入框是必填的,现在就是要取这两个输入框逗号隔开的值而且不能重复。
以下为我实现的脚本代码,欢迎指正。
function checkSend()
{
var Accept = document.getElementById("txtAddresseeName").value;
if( Accept=="")
{
alert("请输入");
return false;
}
if( CheckAcceptName(Accept,"第一个框") )
{
if(document.getElementById("txtOthersName")!=null)
{
var CopyForName = document.getElementById("txtOthersName").value;
if( CopyForName !="")
{
if( CheckAcceptName(CopyForName,"第二个框"))
{
var ErrorMsg="";
if(Accept.substring(Accept.length-1,Accept.length)==",")
Accept=Accept.substr(0, Accept.length-1); //去掉最后一个逗号
var Accepts = Accept.split(","); //将逗号拆分
for(var i=0;i<Accepts.length;i++)
{
AcceptName = Accepts[i];
if( AcceptName!="")
{
var count = 0;
if(CopyForName.substring(CopyForName.length-1,CopyForName.length)==",")
CopyForName=CopyForName.substr(0, CopyForName.length-1); //去掉最后一个逗号
var CopyForNames = CopyForName.split(","); //将逗号拆分
for(var j=0;j<CopyForNames.length;j++)
{
if( AcceptName == CopyForNames[j] )
count ++ ;
}
if( count > 0 ) //如果重复
{
if( ErrorMsg.indexOf(AcceptName) == -1) //添加错误提示
ErrorMsg = ErrorMsg +AcceptName +",";
}
}
}
if( ErrorMsg !="")
{
alert("第一个输入框和第二个框中"+ErrorMsg+"出现重复。");
return false;
}
}
}
}
}
return true;
}
//2008.08.07
//阿一 检查两个输入框是否出现重复
function CheckAcceptName(AcceptName,type)
{
var ErrorMsg="";
if(AcceptName.substring(AcceptName.length-1,AcceptName.length)==",")
AcceptName=AcceptName.substr(0, AcceptName.length-1); //去掉最后一个逗号
var Accepts = AcceptName.split(","); //将逗号拆分
for(var i=0;i<Accepts.length;i++)
{
Name = Accepts[i];
if( Name!="")
{
var count = 0;
for(var j=0;j<Accepts.length;j++)
{
if( Name == Accepts[j] )
count ++ ; //判断某值在该数组中是否出现重复
}
if( count > 1 ) //如果重复
{
if( ErrorMsg.indexOf(Name) == -1) //添加错误提示
ErrorMsg = ErrorMsg +Name +",";
}
}
}
if( ErrorMsg !="")
{
alert(type+ErrorMsg+"出现重复。");
return false;
}
return true;
}
{
var Accept = document.getElementById("txtAddresseeName").value;
if( Accept=="")
{
alert("请输入");
return false;
}
if( CheckAcceptName(Accept,"第一个框") )
{
if(document.getElementById("txtOthersName")!=null)
{
var CopyForName = document.getElementById("txtOthersName").value;
if( CopyForName !="")
{
if( CheckAcceptName(CopyForName,"第二个框"))
{
var ErrorMsg="";
if(Accept.substring(Accept.length-1,Accept.length)==",")
Accept=Accept.substr(0, Accept.length-1); //去掉最后一个逗号
var Accepts = Accept.split(","); //将逗号拆分
for(var i=0;i<Accepts.length;i++)
{
AcceptName = Accepts[i];
if( AcceptName!="")
{
var count = 0;
if(CopyForName.substring(CopyForName.length-1,CopyForName.length)==",")
CopyForName=CopyForName.substr(0, CopyForName.length-1); //去掉最后一个逗号
var CopyForNames = CopyForName.split(","); //将逗号拆分
for(var j=0;j<CopyForNames.length;j++)
{
if( AcceptName == CopyForNames[j] )
count ++ ;
}
if( count > 0 ) //如果重复
{
if( ErrorMsg.indexOf(AcceptName) == -1) //添加错误提示
ErrorMsg = ErrorMsg +AcceptName +",";
}
}
}
if( ErrorMsg !="")
{
alert("第一个输入框和第二个框中"+ErrorMsg+"出现重复。");
return false;
}
}
}
}
}
return true;
}
//2008.08.07
//阿一 检查两个输入框是否出现重复
function CheckAcceptName(AcceptName,type)
{
var ErrorMsg="";
if(AcceptName.substring(AcceptName.length-1,AcceptName.length)==",")
AcceptName=AcceptName.substr(0, AcceptName.length-1); //去掉最后一个逗号
var Accepts = AcceptName.split(","); //将逗号拆分
for(var i=0;i<Accepts.length;i++)
{
Name = Accepts[i];
if( Name!="")
{
var count = 0;
for(var j=0;j<Accepts.length;j++)
{
if( Name == Accepts[j] )
count ++ ; //判断某值在该数组中是否出现重复
}
if( count > 1 ) //如果重复
{
if( ErrorMsg.indexOf(Name) == -1) //添加错误提示
ErrorMsg = ErrorMsg +Name +",";
}
}
}
if( ErrorMsg !="")
{
alert(type+ErrorMsg+"出现重复。");
return false;
}
return true;
}