Foros del Web » Programando para Internet » Javascript »

duda con evento onblur

Estas en el tema de duda con evento onblur en el foro de Javascript en Foros del Web. ola tengo el siguiente codigo para que al escribir por ejemplo 65 salga 6.5 y que solo admita numeros: <input type="text" maxlength=2 name=txt_prommat7 size=3 tabindex=17 ...
  #1 (permalink)  
Antiguo 26/06/2007, 08:05
 
Fecha de Ingreso: mayo-2007
Mensajes: 413
Antigüedad: 17 años, 9 meses
Puntos: 0
Busqueda duda con evento onblur

ola
tengo el siguiente codigo para que al escribir por ejemplo 65 salga 6.5 y que solo admita numeros:

<input type="text" maxlength=2 name=txt_prommat7 size=3 tabindex=17 onblur="if(this.value.indexOf('.') == -1) this.value = this.value.split('').join('.')" / onkeypress="if (event.keyCode < 45 || event.keyCode > 57) event.returnValue = false"/ onFocus="siguienteCampo ='txt_promgral7';"/>

y tengo este que me permite cambiar el color de la nota si es meno a 40
cambiar color con nota menor a 40

<input type="text" onblur = "this.style.color = (parseInt(this.value) < 40) ? 'red' : 'black'" />

mi problema es que ambos estan con onblur y no acepta 2 veses escritos este evento ...nesecito que aparte qie coloque el punto tambien cambie de color al mismo tiempo......intente separarlos con ; y tampoko funciona ...
como puedo unir las 2 cosas que quiero??

grasias desde yap
  #2 (permalink)  
Antiguo 26/06/2007, 08:54
Avatar de mape367  
Fecha de Ingreso: noviembre-2004
Ubicación: CDE, Paraguay
Mensajes: 213
Antigüedad: 20 años, 2 meses
Puntos: 3
Re: duda con evento onblur

Hola natashca

Tendría que funcionar poniendo el ; al final de cada orden. Pero de todas formas puedes crear una funcion y desde ahi llamar a las dos acciones.
Código HTML:
<... onBlur="acciones(this);"> 
Código HTML:
<script>
          function acciones(obj){separador(obj); chColor(obj);}
</script> 
Espero te sea útil,


Saludos
  #3 (permalink)  
Antiguo 26/06/2007, 09:36
 
Fecha de Ingreso: mayo-2007
Mensajes: 413
Antigüedad: 17 años, 9 meses
Puntos: 0
Re: duda con evento onblur

ola grasias por responder....bueno con ; no me funciona y no se porque ...pero creare la funcion pero como ?

<scrip>
funtion color()
{
text_numero" = "this.style.color = (parseInt(this.value) < 40) ? 'red' : 'black'";
}
</script>
esta bien esto??

grasias por responder
  #4 (permalink)  
Antiguo 26/06/2007, 11:44
 
Fecha de Ingreso: mayo-2007
Mensajes: 413
Antigüedad: 17 años, 9 meses
Puntos: 0
Re: duda con evento onblur

ola bueno .....la funcion esta mala pero no se como juntar las 2 en una funcion ....algien que me ayude??

por favor grasias
  #5 (permalink)  
Antiguo 26/06/2007, 17:27
Avatar de derkenuke
Colaborador
 
Fecha de Ingreso: octubre-2003
Ubicación: self.location.href
Mensajes: 2.665
Antigüedad: 21 años, 3 meses
Puntos: 45
Re: duda con evento onblur

Buf, creo que te convendría separar el código del html, porque es algo largo, y es un poco dificil escribir código lejible en una sola línea.

Además el código para permitir escribir sólo números sólo funciona en IE, te lo he tocado para que sea más estándar:

Código:
<input type="text" maxlength="2" name="txt_prommat7" size="3" tabindex="17" onblur="f_blur(this)"  onkeypress="f_keypress(event)" onFocus="siguienteCampo ='txt_promgral7'; "/>

<script type="text/javascript">

function f_blur(caja) {
	if(caja.value.indexOf('.') == -1) 
		caja.value = caja.value.split('').join('.');
	// ¿la coloreamos?
	if ( parseInt(caja.value.replace(/\./,"")) < 40 ) 
		caja.style.color = "red";
	else
		caja.style.color = "black";
}
function f_keypress(e) {
	var tecla = (document.all) ? e.keyCode : e.which;
	if (tecla==8) return true;
	return /d/.test( String.fromCharCode(tecla) );
}

</script>
No te funcionaba más que nada por la condicional:
parseInt(this.value) < 40
que mira si el valor convertido a número es menor a 40. Habría que convertirlo a número y mirar a ver si es menor de 4.0 o sino quitarle el punto, como lo he hecho en el script.


Espero que sea lo que buscas.



Un saludo.
__________________
- Haz preguntas inteligentes, y obtendrás más y mejores respuestas.
- Antes de postearlo Inténtalo y Búscalo.
- Escribe correctamente tus mensajes.
  #6 (permalink)  
Antiguo 27/06/2007, 07:39
 
Fecha de Ingreso: mayo-2007
Mensajes: 413
Antigüedad: 17 años, 9 meses
Puntos: 0
Re: duda con evento onblur

ola derdenuke............de verdad grasias ...quedo muy exelente...eres un master..grasias por ayudarme ....de verdad esto era muy impotante .grasias
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 21:14.