Javascript自动计算输入字段中的总字符数

时间:2016-10-07 20:21:21

标签: javascript count character

我有一个问题,我想弄明白。这是我到目前为止,它似乎按照它的方式工作但是当我添加一个php变量来自动弹出输入字段时,它似乎没有计算出使用的字符。

此字段的最大值为80个字符,我无法控制。我必须限制它最多80个字符。一旦表单加载并填充了字段,我需要输入字段进行自动计算。当我将php变量包含到输入值时,输入字段显示填充了字符的字段,但字段保持在"零"字符,直到我在字段中移动鼠标并尝试添加另一个字符。

<!doctype html>
<html>
<head>
<meta charset="utf-8">
<title>Untitled Document</title>
</head>
<script type="text/javascript">
document.testform.countInput.focus();
function countChars(countfrom,displayto) {
  var len = document.getElementById(countfrom).value.length;
  document.getElementById(displayto).innerHTML = len;
}
</script>

<form id="testform">
Title: <strong id="countOutput">0</strong><strong>/80 Max Character</strong>
<input  type="text" name="dsp_URL" value="" size="80" maxlength="80"  lengthcut="true" id="countInput" onkeyup="countChars('countInput','countOutput');" /><br />
</form>

<script type="text/javascript">


var input = document.getElementById ("countInput");
input.focus ();
</script>
<body>
</body>
</htmt>

2 个答案:

答案 0 :(得分:1)

您应该在加载页面时调用该函数以及onkeyup事件

&#13;
&#13;
document.testform.countInput.focus();

function countChars(countfrom, displayto) {
  var len = document.getElementById(countfrom).value.length;
  document.getElementById(displayto).innerHTML = len;
}
&#13;
<head>
  <meta charset="utf-8">
  <title>Untitled Document</title>
</head>

<form id="testform">
  Title: <strong id="countOutput">0</strong><strong>/80 Max Character</strong>
  <input type="text" name="dsp_URL" value="" size="80" maxlength="80" lengthcut="true" id="countInput" onkeyup="countChars('countInput','countOutput');" />
  <br />

  <script>
    countChars('countInput', 'countOutput');
  </script>

</form>

<body>
</body>
&#13;
&#13;
&#13;

请确保在调用之前定义countChars

答案 1 :(得分:0)

我认为可以安全地假设通过php使用字符串填充文本字段不会触发countChars()的条件,因为它的触发器在该文本字段上是onkeyup。

也许您可以在How to impose maxlength on textArea in HTML using JavaScript中找到对您的问题有帮助的解决方案。我希望这有助于您的验证:)