-1

我在表单中有一个文本框,我想将允许的最大数值设置为 50。这可以通过 HTML 实现吗?谢谢

4

5 回答 5

3

是的。使用 maxlength 属性。

<input type="text" size="10" maxlength="50">

编辑:我误解了你的问题。如果您希望它最大数量为 50 并且它不接受任何其他内容,您应该只检查输入中接受的值,如果它大于 50,您可以做一些事情(清除文本框,抛出错误,应用错误类等)。也许写一个函数来判断它是否是一个数字并且 <= 50?

function isValidNum(n) {
  if (!isNaN(parseFloat(n)) && isFinite(n) && n<=50) 
      //do something
}

这里

于 2013-01-22T21:10:45.137 回答
1

我认为您正在寻找 maxlength 属性:

<input type="text" maxlength="10">
于 2013-01-22T21:11:19.620 回答
0

你可以在 onblur 事件中使用 javascript 来完成

function txtOnBlur(txt){
    if (txt.value >50){
         txt.value = "";
         alert("No values over 50");
     }
}

添加添加 onBlur="javascript:txtOnBlur(this);" 属性到您的文本框。

如果是字符长度,只需添加 maxlenght 属性(maxlength="50")。

于 2013-01-22T21:12:08.873 回答
0

据我了解,您正在寻找的更像是这样的:将输入框限制为 0-100

Crimson提交的答案听起来与您需要的代码完全一致。根据您的需要进行编辑和改进,它将变为:

<script>
function handleChange(input) {
  if (input.value < 0) input.value = 0;
  if (input.value > 50) input.value = 50;
}
</script>

你的文本框看起来像这样:

<input type="text" onChange="handleChange(this)" />
于 2013-01-23T00:30:36.430 回答
0

你要这个:

 <input type="number" min="1" max="50" />

因此 51 太高了。50没问题。这是一个 HTML5 属性。

Maxlengh将允许 50 个字符,即后面有 49 个零的数字。我不认为这是你的意思。 Max将允许输入的值不高于指定值。

您仍然需要在服务器端验证它。

于 2013-01-23T00:41:36.733 回答