我发现以下JavaScript会对textarea中的字符进行倒计时,并将其显示在另一个文本框中。除了使用字段名称外,它非常适合我需要的东西。我的字段是数组(short_descripton[]
和long_description[]
)。有没有办法使用字段ID而不是名称?
<script>
function textCounter(field,cntfield,maxlimit) {
if (field.value.length > maxlimit) // if too long...trim it!
field.value = field.value.substring(0, maxlimit);
// otherwise, update 'characters left' counter
else
cntfield.value = maxlimit - field.value.length;
}
</script>
这是一个字段示例:
<textarea id=sd1 rows="2" name="short_description[]">
onKeyDown="textCounter(document.myForm.short_description[],document.myForm.remLen1,125)"
onKeyUp="textCounter(document.myForm.short_description[],document.myForm.remLen1,125)">
</textarea>
<br>
<input readonly type="text" name="remLen1" size="3" maxlength="3" value="125">
characters left
与往常一样,任何帮助都将受到赞赏。
答案 0 :(得分:1)
当然可以!看看:
<textarea id=sd1 rows="2" name="short_description[]"
onKeyDown="textCounter(this,document.getElementById('remLen1'),125)"
onKeyUp="textCounter(this,document.getElementById('remLen1'),125)">
</textarea>
<br>
<input readonly type="text" name="remLen1" id="remLen1" size="3" maxlength="3" value="125">
characters left
答案 1 :(得分:1)
使用您想要的ID调用document.getElementById()。
onKeyDown="textCounter(document.getElementById('sd1'),document.myForm.remLen1,125)"
onKeyUp="textCounter(document.getElementById('sd1'),document.myForm.remLen1,125)">