我想创建textarea字符计数器和限制器。我有以下代码但由于某种原因它不起作用。
<?=$form->field($model, 'example', ['template' => '{label}{input}{error}', 'labelOptions' => $class_label])
->textarea(['onKeyDown' => 'limiter()', 'onKeyUp' => 'limiter()'])
echo "<input id='ch' type='text' style='width:45px' readonly value ='300'> characters remain";
?>
以下代码是在&#34; ...&#34;:
之间插入的javascript代码<script type="text/javascript">
function limiter(){
var example = document.getElementById("example");
if(example.value.length > 300){
example.value = example.value.substring(0, 300);
}
else{
document.getElementById("ch").value = 300 - example.value.length;
}
}
</script>
如果您能帮助我纠正我的代码,我将不胜感激。
提前致谢。
答案 0 :(得分:0)
完成测试后,上面的JavaScript工作正常,所以我只能假设它是HTML的渲染问题。我猜测表单输入的ID不是&#34;例如&#34;。 HTML应如下所示:
<input type="text" id="example" onkeydown="limiter()" onkeyup="limiter()">