Ver Mensaje Individual
  #1 (permalink)  
Antiguo 21/11/2008, 11:12
0le0
 
Fecha de Ingreso: octubre-2008
Mensajes: 109
Antigüedad: 16 años, 1 mes
Puntos: 0
Recordar valor al próximo click

Saludos, tengi una función que me esta haciendo sufrir y no se como hacerla.
He buscado que en javascript no se puede hacer paso de variables por referencia así que estoy atascado.

Estoy trabajando con un formulario y lo que quiero hacer es que si hacen click en un select y dejan el valor por default pregunte si esa es la opción que quiere dejar y que continué verificando campos.
Si envían nuevamente el formulario quiero que ya no pregunte por los campos en los que dejaron la opción por default, pero no lo hace.
Código:
<script type="text/javascript">

var control = new Array(false,false,false);
for(var ini=0;ini<control.length;ini++)
alert("control"+ini+control[ini]);

function validarCiclo(formulario)
{	//alert("tamaño:"+document.myform.cicloA.length);
	var arrVerificar = new Array(false,false,false); 
	//alert(document.myform.elements.length);
	//var arrVerificar = new Array(false); 
	
	var bandera =new Array(false,false);
	
	for(var i=0;i<2;i++)
	{	control[0]=true;
	alert("control"+i+control[i]);
	alert("verf"+i+arrVerificar[i]);
		if(bandera[i] == false)
		{
			if(document.myform.elements[i].options[document.myform.elements[i].selectedIndex].text.indexOf("Por definir")!=-1)
{
 var resp = confirm("Ciclo de Atención"+i +"aún no esta definido.\n" + "Desea continuar?");
 	if(resp)
	{
          control[0]=true;
	  arrVerificar[i] = true;
	  bandera[i] = true;
         alert("banda"+i+bandera[i]);
 	  continue;
	}
	else
		{
			arrVerificar[i] = false;
			bandera[i] = false;
			alert("banda"+i+bandera[i]);
			 return false;
		}
			}
			   else{
			     arrVerificar[i] = true; 
			     continue;
		                  }
              }
		alert("sss"+i+bandera[i]);	
	}
	
	if(isEmpty(document.myform.presupuesto.value))
	{
	arrVerificar[2] = false;
	document.myform.presupuesto.style.backgroundColor = "#ffffcc";
	}
	else {
	arrVerificar[2] = true
	document.myform.presupuesto.style.backgroundColor = "white";
	}
	
	var inc =0;
	for(za=0;za<3;za++)
	{alert("za"+za+arrVerificar[za]);
	if(arrVerificar[za] == true)
	inc++;
	}
	if(inc == 3)
	 //final
	 return true;
	 else return false;
	 alert("c"+control[0]);--->aquí debería aparecer el nuevo valor pero no cambia
}
</script>
Espero me puedan ayudar y no se a de mucha molestia que ponga tanto código.