Ver Mensaje Individual
  #1 (permalink)  
Antiguo 30/11/2006, 14:08
MaXaC
 
Fecha de Ingreso: abril-2005
Ubicación: Lima-Peru
Mensajes: 313
Antigüedad: 19 años
Puntos: 1
buscar duplicado en combos

Hola, estoy haciendo un formulario con 10 combos con los mismos datos, digamos que sean productos, estoy tratando de que solo se pueda escoger una vez un producto en cada combo, osea si en el primer combo escogen 'papas', en los siguiente se deberia lanzar un mensaje que ya no se puede escoger 'papas', estuve probando metiendo en el evento onchange del combo el nombre del producto y comparando con el anterior pero no da buenos resultados

Código:
<script language="javascript">

var a=new Array; var i=0; var f=0;

function cambiar(prod){

if(document.getElementById(prod).options[document.getElementById(prod).selectedIndex].value!='no')
	{
	a[i]=document.getElementById(prod).options[document.getElementById(prod).selectedIndex].label;
	i++;
	}
if(f>=1) 
{
buscar();

}f++;

}

function buscar(){
for(d=0;d<=i;d++){
	if (a[d]==a[d-1])
	{
		alert("el elemento ya existe");
	}
	else{
		alert("No existe aun");
	
	}
}

}

function mostrar(){
	for (b=0;b<=1;b++)
	{
	alert(a[b]);
	}
}

function limpiar(){
i=0;d=0;f=0
	for (c=0;c<=1;c++){
		a[c]=0;
	}

}
</script> 
y en el body
Código:
<select id="combo2" onchange="cambiar(this.id)">
<option class="clasecombo" id="optcombo2" label="lblcombo1" title="titlecombo"  >papas</option>
<option class="clasecombo2" id="optcombo2" label="lblcombo2" title="titlecombo2" >tomates</option>
<option class="clasecombo3" id="optcombo3" label="lblcombo3" title="titlecombo3"  >zanahorias</option>

</select>
Asi como este 10 combitos. Como veran el codigo es muy basico, meto en un array los valores seleccionados, y luego trato de compararlos para ver si ya los han seleccionado, pero al seleccionar mas de una vez el mismo no compara los valores, alguien podria explicarme la logica de como tendria que hacer las comparaciones o tiene algun enlace que me haga ver la luz, gracias....