我有2个输入框,用于旅行的乘客的名字和姓氏
最多可以有9名乘客
不允许有两名同名的乘客(第一次和最后一次合并)
如何检查乘客是否都没有相同的名字(名字和姓氏合并)
<input type="text" name="adultFirstName1" id="adultFirstName1" class="form-control input-sm" placeholder="" style="width:100%; padding:5px;">
感谢。
编辑:
我没有使用数据库来存储乘客姓名,所有乘客都在同一页面上输入。
答案 0 :(得分:0)
您可以添加验证javascript函数,但首先需要为所有输入框指定特定名称。 你可以尝试这样的事情:
<input type="text" name="adultFirstName1" id="adultFirstName1" class="form-control input-sm" placeholder="" style="width:100%; padding:5px;" OnClick="Verify();">
.
.
.
<input type="text" name="adultFirstName10" id="adultFirstName10" class="form-control input-sm" placeholder="" style="width:100%; padding:5px;" OnClick="Verify(id);">
然后你需要在每次改变价值时验证。
答案 1 :(得分:0)
var name=[];
var sameName=false;
for(var i=1;i<=<%=detailsModel.getNumberOfAdult()%>;i++)
{
var fullName = document.getElementById("adultFirstName"+i).value+" "+document.getElementById("adultLastName"+i).value
name.push(fullName);
}
for(var i=1;i<=<%=detailsModel.getNumberOfChild()%>;i++)
{
var fullName = document.getElementById("childFirstName"+i).value+" "+document.getElementById("childLastName"+i).value
name.push(fullName);
}
for(var i=1;i<=<%=detailsModel.getNumberOfInfant()%>;i++)
{
var fullName = document.getElementById("infantFirstName"+i).value+" "+document.getElementById("infantLastName"+i).value
name.push(fullName);
}
for(var i=0;i<name.length;i++)
{
for(var j=i+1;j<name.length;j++)
{
if(name[i]==name[j])
{
var sameName=true
valid= false;
}
}
}
if(sameName==true)
{
$('#sameNameError').html('2 Passengers Cannot Have Same Name');
}
else
{
$('#sameNameError').html('');
}