jQuery代码点火器文本区域的最小字符计数器


jQuery Minimum Character Counter for Codeigniter Textarea

我正在努力获得使用CI/jQuery的最小字符计数器。我希望能够阻止表单提交,并在用户输入的字符太少时显示警报。表单只是使用以下代码正常提交:

function checktextarea(minLength) {
  var textarea = jQuery('#field').value.length;
     if(textarea < minLength) {
        e.preventDefault();
        alert('You need to enter at least ' + minLength ' + characters');
        return false;
     }
};

在CI中,我有:

<?php $attributes = array ('onsubmit' => 'checktextarea(15)'); ?>
<?php echo form_open('controller/function', $attributes); ?>
// I know this is standard HTML
  <textarea name="content" class="textarea_css" rows="10" cols="73" id="field"></textarea>
<?php echo form_submit('send', 'Submit Your Textarea'); ?>
<?php echo form_close(); ?>

非常感谢您的帮助!

您有一个对e var的引用,它不在您的函数范围内。我假设您正在尝试取消一个活动,但您应该在父函数中这样做。

e.preventDefault();行导致编译错误。

接下来,如果您访问文本区域的值不正确,请尝试jQuery('#field').val().length;

最后,行alert('You need to enter at least ' + minLength ' + characters');格式错误,应读取alert('You need to enter at least ' + minLength + ' characters');

添加了一把小提琴,只是为了好玩和证明:http://jsfiddle.net/TSbK8/7/

您的jQuery语句获取长度不太正确。尝试var textarea = jQuery('#field').val().length;而不是var textarea = jQuery('#field').value.length;