shoaib sabir
mi tarea es hacer una calculadora de peso, pero debido a las limitaciones de la universidad, no puedo usar todas las etiquetas, así que escribo el código, funciona bien pero me da un error de please enter a valid value the two nearest valid value are ***number*** and ***number***
.
creo que es por la número atributo en aporte etiqueta pero no puedo encontrar lo que está mal y cómo corregirlo.
Hay un error más si solo calculo un flash de salida de conversión en la pantalla y desaparezco si obtengo salida en todos los campos, luego se muestra la respuesta.
<html>
<head>
<title>Weight Convertor Calculator</title>
<script>
var z;
var x;
function converter() {
if (document.weight.kg.value >= 1) {
x = document.weight.kg.value;
document.getElementById("g").value = x * 1000;
document.getElementById("p").value = x * 2.2046;
document.getElementById("m").value = x * 1000000;
document.getElementById("ut").value = x * 0.0011023;
z = 35.274 * x;
document.getElementById("o").value = z;
} else {
window.alert("please enter any number greater than 0");
}
}
</script>
</head>
<body bgcolor="#b3f0ff">
<h1 align="center" style="color:#ff0066;"> Weight Calculator</h1>
<br>
<br>
<form name="weight" method="post">
<table align="center" style="color:#ff0066;">
<tr>
<td><b>Enter your weight in Kg:</b></td>
<td><input type="number" id="kg" name="kilogram" placeholder="enter_any_number"></td>
</tr>
<tr>
<td align="right"><input type="submit" value="Convert" onClick="converter(kg.value)"></td>
<td><input type="reset"></td>
</tr>
<tr>
<td align="right"><b>weight in Grams=</b></td>
<td><input type="number" id="g" name="gram"></td>
</tr>
<tr>
<td align="right"><b>weight in Pounds=</b></td>
<td><input type="text" id="p" name="pound"></td>
</tr>
<tr>
<td align="right"><b>weight in MilliGrams=</b></td>
<td><input type="number" id="m" name="milligram"></td>
</tr>
<tr>
<td align="right"><b>weight in US Ton=</b></td>
<td><input type="text" id="ut" name="uton"></td>
</tr>
<tr>
<td align="right"><b>weight in Ounces=</b></td>
<td><input type="number" id="o" name="ounce"></td>
</tr>
</table>
</form><br>
<p align="center" style="color:#ff0066;"><b>NOTE: Enter only numerical
value which is greater than 0</b></p>
</body>
</html>
Intenta agregar el atributo step="any"
para usted input
. Eso me ayudó.
-
Esta es la respuesta correcta. Documentación relevante: desarrollador.mozilla.org/en-US/docs/Web/HTML/Element/input/…
– alexg
29 de septiembre de 2020 a las 8:58
-
Tuve este problema con el selector de fecha y hora y esta sugerencia lo solucionó.
– minimalista_cero
12 de julio de 2022 a las 3:13
No es necesario hacer el tipo de entrada ‘texto’, solo agregue un atributo step=”0.01″ con type=”number” para aceptar valores decimales.
bru02
- En las entradas de números, los fragmentos no están permitidos, por lo que debe usar una entrada de texto.
- Su formulario será enviado: datos perdidos
Aquí puedes encontrar un manifestación que funciona, basado en su código.
-
No es necesario utilizar una entrada de texto. ¿Qué significa “datos desaparecidos”?
– madera de isher
8 de agosto de 2022 a las 18:48
Cambiar el tipo de entrada de número a texto funcionará.