js字计数器 - 刷新页面时,计数器返回原始计数

时间:2013-04-04 16:22:54

标签: javascript forms refresh word

每当有人刷新我的页面或在页面上提交表单(并且出现错误)时,单词计数器将返回原始字符数。我的表格中有一个特定字段的单词计数器。

因此,每当有人试图填写我们的表格时,我们的验证会告诉他们必须填写具体问题并且不允许他们提交表格。我意识到我可以通过取出它说textarea不能留空的地方来快速修复验证。但这不是我能想到的解决方案。

这是我的代码:

    <script language="javascript" type="text/javascript">

function textCounter(field,cntfld,maxlimit) {
    var cntfield = document.getElementById(cntfld);
if (field.value.length > maxlimit)
    field.value = field.value.substring(0, maxlimit);
else
cntfield.innerHTML = maxlimit - field.value.length;
}

</script>

其次是我的HTML

  <div>
    <textarea class="cf_inputbox required" rows="7" id="text_id"  title="title_test"  cols="50" name="text_id" onKeyDown="textCounter(this,'counter_length',200)"
onKeyUp="textCounter(this,'counter_length',200)"></textarea>
        <br/>
        <span id="counter_length">200</span> Left
  </div>

我如何修改我的代码,以便在刷新页面或提交表单时(有错误 - 从而验证开始),单词counter将保留在CURRENT编号而不是返回200 ?

1 个答案:

答案 0 :(得分:0)

您需要定义在页面加载时执行的功能。像这样:

<script>
     function onPageLoad() {
          var field = document.getElementById("text_id");
           textCounter(field,'counter_length',200)
       }
</script>
<body onload="onPageLoad()">
   <!-- your markup-->
</body>

FIDDLE EXAMPLE