2013-04-04 58 views
0

每當有人刷新我的網頁或提交頁面的表單(並有錯誤),字計數器追溯到字符的原始金額。我在一個特定領域的表格中有一個字處理器。JS字計數器 - 刷新計數器返回頁面原來的計數時,

因此,每當有人試圖填寫表格,我們的驗證告訴他們,他們必須填寫的具體問題,並沒有讓他們提交表單。我意識到我可以快速修復驗證,通過取出它說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> 

跟着我怎麼能修改我的代碼,如果刷新頁面,或者如果表單提交(以錯誤 - 從而驗證開始),單詞計數器將停留在當前數字而不是回到200?

+1

執行的頁面加載的功能。 – adeneo 2013-04-04 16:24:27

回答

0

您需要定義函數,該函數將在頁面加載時執行。事情是這樣的:

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

FIDDLE EXAMPLE

+0

謝謝!這段代碼工作得非常好:) – 2013-04-04 17:46:44