Foros del Web » Programando para Internet » Javascript »

Recordar valor al próximo click

Estas en el tema de Recordar valor al próximo click en el foro de Javascript en Foros del Web. 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 ...
  #1 (permalink)  
Antiguo 21/11/2008, 11:12
 
Fecha de Ingreso: octubre-2008
Mensajes: 109
Antigüedad: 15 años, 6 meses
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.
  #2 (permalink)  
Antiguo 21/11/2008, 11:55
Avatar de David
Moderador
 
Fecha de Ingreso: abril-2005
Ubicación: In this planet
Mensajes: 15.720
Antigüedad: 19 años
Puntos: 839
Respuesta: Recordar valor al próximo click

No leí todo el código, pero si lo que quieres es que al recargar ya estén seleccionados los valores por defecto deberías guardar en cookies esos valores y recuperarlos en el evento onload del documento.
__________________
Por favor, antes de preguntar, revisa la Guía para realizar preguntas.
  #3 (permalink)  
Antiguo 21/11/2008, 11:59
Avatar de Fernand0  
Fecha de Ingreso: septiembre-2005
Ubicación: Buenos Aires
Mensajes: 610
Antigüedad: 18 años, 7 meses
Puntos: 19
Respuesta: Recordar valor al próximo click

O sea no prevenis el evento submit verdad? Haces las comprobaciones luego de que el submit se dio?

Estoy tratando de adivinar... podes hacer 2 cosas... cookies.. o prevenir el evento y hacer las comprobaciones en la misma hoja
  #4 (permalink)  
Antiguo 21/11/2008, 12:16
 
Fecha de Ingreso: octubre-2008
Mensajes: 109
Antigüedad: 15 años, 6 meses
Puntos: 0
Respuesta: Recordar valor al próximo click

Si al enviar el formulario llama a la función validate() que revisa si el usario cambio los valores de los "select" que tengo en mi formulario , si no lo cambio le avisa al usuario por medio de un confirm() y si el usuario esta de acuerdo en dejar esa opción pendiente seguirá verificando los campos.

Si encuentra otro error como en un campo de texto donde solo se permiten números no envía el formulario y colorea los campos que debe verificar, al enviar de nuevo el formularioya no debe preguntar por las opciones de los select pues el usuario ya había dicho que quedarían pendientes.

Así que lo que quiero es que con un arreglo o algo así almacena banderas true/false para que se las mande y las revise si hay un true ya no pregunte por la opción y pase a la siguiente.
  #5 (permalink)  
Antiguo 21/11/2008, 12:24
Avatar de Fernand0  
Fecha de Ingreso: septiembre-2005
Ubicación: Buenos Aires
Mensajes: 610
Antigüedad: 18 años, 7 meses
Puntos: 19
Respuesta: Recordar valor al próximo click

Cookies en JS
  #6 (permalink)  
Antiguo 21/11/2008, 12:36
 
Fecha de Ingreso: octubre-2008
Mensajes: 109
Antigüedad: 15 años, 6 meses
Puntos: 0
Respuesta: Recordar valor al próximo click

Y esto :
JavaScript: Passing by Value or by Reference http://snook.ca/archives/javascript/javascript_pass/"]http://snook.ca/archives/javascript/javascript_pass/
http://sirdarckcat.blogspot.com/2007/07/passing-reference-to-javascript.html

Perdón por la manera de ingresar links pero aún no soy de fiar de acuerdo al sistema

Habla del paso por referencia de objetos a funciones...
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 16:55.