如果达到最大限制,HTML会设置固定值

时间:2018-02-16 08:24:23

标签: html limit

我为同样的问题搜索了一下,但我只能找到像'max& amp; maxlength,但这些对我不起作用。

我拥有的HTML:

<input type="text" id="current" name="current_xj" maxlength="9" placeholder="Enter your value">

我想将最大值设置为:200000000。 我以为我可以使用max =“200000000”,但它对我不起作用。

<input type="text" id="current" name="current_xj" maxlength="9" max="200000000" placeholder="Enter your value">

你仍然可以输入数字250000000或999999999,我倾向于做一些实时计算。因此,它不会验证该数字是否高于200000000。

我想做的是:
选项1)
如果某人输入的数字高于200000000,则将输入值更改为200000000.立即,因为没有要点击的按钮(如提交或计算或任何其他)。

选项2)
不允许任何高于200000000的数字被输入。

我该怎么做? 提前谢谢!

3 个答案:

答案 0 :(得分:2)

请尝试以下代码:

&#13;
&#13;
$(document).ready(function() {
  $("input").keyup(function() {
    //alert($(this).val());
    if ($(this).val() < 200000000) {

    } else {
      alert("Reached Maximun Limit of Input");
      $(this).val() = 200000000;
    }
  });
});
&#13;
<head>
  <title>Test</title>
  <meta charset="utf-8">
  <meta name="viewport" content="width=device-width, initial-scale=1">
  <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css">
  <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
  <script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js"></script>
</head>

<body>
  <h4>Validate text Box</h4>
  <input type="text" id="current" name="current_xj" maxlength="9" max="200000000" placeholder="Enter your value">
</body>
&#13;
&#13;
&#13;

答案 1 :(得分:2)

以下是当值变大时将触发该功能的代码

function func() {
  if (document.getElementById("current").value > 200000000) {
    //alert("reached max limit");
    document.getElementById("current").value = 200000000;
  }
}
<input type="text" id="current" name="current_xj" maxlength="9" onkeyup="func()" placeholder="Enter your value">

答案 2 :(得分:1)

以下是一些可以继续开发的JQuery测试

&#13;
&#13;
$(document).ready(function() {


  $(".Int").keydown(function() {
    try {
      var value = parseFloat($(this).val());
      $(this).attr("Temp", value) // Save the current value
    } catch (err) {

    }

  }).keyup(function() {

    var value = parseFloat($(this).val());
    var temp = $(this).attr("Temp");
    var max = parseFloat($(this).attr("max"));
    // if the new value bigger then max, then load the prev value
    if (value > max)
      $(this).val(temp);

  });
});
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<input type="text" id="current" class="Int" name="current_xj" maxlength="9" max="200000000" placeholder="Enter your value">
&#13;
&#13;
&#13;