Duda sobre un código fuente en Javascript: no logro que varias funciones interactúen de forma libre.

HOla Experto estaba analizando y tengo una duda en un código :
Puede ser que cuando realizo una estructura condional o función o algún ciclo me permite realizar una sola linea sola en el caso verdad y otra en el caso falso mira:
si yo en prompt ingrese una palabra y es  "compra" : que me sume dos numeros y que al resultado lo multiplique por tres; osea if (a=="compra") j=r+d  c=j*2
Si yo hago eso no me anda el programa ya que después de la condición que se cumpla me permitirá un sola linea de secuencia y no dos. Es decir o sumo dos números o multiplico a dicho resultado por tres que seria ilógico.
¿Puede ser?
Tengo este código y no me anda y creo que es algo parecido pero con función
La idea es si el usuario en un text ingresa un letra o algo no definido haciendo el evento validar es decir click en el botón me devuelva "" caso contrario el valor definido es decir un numero entero. ¿La verdad el código esta bien creo?
<html>
<head>
<title>Verificar número</title>
<script>
function verificonumero(){
dato = document.formu.texto.value
//document.formu.texto.value = dato
//dato = parseInt(dato)
dato=dato *1
if (isNaN(dato)) {
return ""
//alert ("Introduzca un valor numérico")
} else {
return dato
}
}
</script>
</head>
<body>
<form name="formu">
<input type="text" name="texto" size="25">
<input type="button" value="validar" onclick="verificonumero()">
</form>
</body>
</html>
Experto desde ya gracias por su tiempo...

1 respuesta

Respuesta
1
Lo que deseas hacer es verificar si en un TextBox se escribe un nº y no otra cosa.
Para esto hay varias soluciones que una. podría ser:
http://www.forosdelweb.com/f13/permitir-solo-numeros-textbox-292139/
<!--
<head>
<mce:script type="text/javascript"><!
function validar(e) {
tecla = (document.all) ? e.keyCode : e.which;
if (tecla==8) return true; //Tecla de retroceso (para poder borrar)
patron = /\d/;
te = String.fromCharCode(tecla);
return patron.test(te);
}
// -->
<input onkeypress="return validar(event)" maxlength="2147483647" size="20" type="text" />
-->
Utilizan una expresión regular y el evento onkeypress para controlar, podrías añadir a la expresión regular que permita poner el punto o coma de decimal
saludos
(nota: recuerda que las instrucciones en javascript terminan con ; , p.e: dato=dato*1;)
<!--<br-->
Disculpame pero no se donde encarjarlo el bloque de codigo que me diste  probe el codigo y no me anda ;
Y tampoco entiendo por que pones <mce:script type="text/javascript"><! En lugar de poner
<script>
Pero no es lo mismo el programa me anda igual si pongo o no pongo ;¿?
¿Qué si no pongo ; me traerá en algún momento problemas?
Desde ya gracias por el tiempo...
<!--
<html>
<head>
<script>
function validar(e) {
tecla = (document.all) ? e.keyCode : e.which;
if (tecla==8) return true; //Tecla de retroceso (para poder borrar)
patron = /\d/;
te = String.fromCharCode(tecla);
return patron.test(te);
}
</script>
</head>
<body>
<input type="text" onkeypress="return validar(event)">
</body>
</html>
-->

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas