por favor ingrese un valor válido los dos valores válidos más cercanos son?

3 minutos de lectura

avatar de usuario de shoaib sabir
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ó.

No es necesario hacer el tipo de entrada ‘texto’, solo agregue un atributo step=”0.01″ con type=”number” para aceptar valores decimales.

avatar de usuario de bru02
bru02

  1. En las entradas de números, los fragmentos no están permitidos, por lo que debe usar una entrada de texto.
  2. 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á.

¿Ha sido útil esta solución?