0

如何将字数统计集成到 bassistance.de 验证中?例如,我不希望人们输入超过 50 个单词,它应该显示一个错误来指示它。

<form action="done.php" method="post" id="mainform"  class="validate">
<textarea name="message" rows="4" id="message"  class="required" ></textarea>   
</form>

这就是我所拥有的,但我不知道从这里去哪里

$(document).ready( function() {
$("form.validate").validate({
    submitHandler: function(form) {
               form.submit();
    }
})

});

在这里的任何帮助将不胜感激,我根本不熟悉这个插件。

4

3 回答 3

1

根据您认为的平均字长(我仍然落后于 5),我会使用最少的字符数。所以那将是:

$("#mainform").validate({
  rules: {
    message: {
      required: true,
      minlength: 250
    }
  }
});

更新:

如果 ajax 是一个选项,您可以使用该remote规则。我认为它会遵循以下原则:

$("#test").validate({
    rules: {
        message: {
            remote: {
                url: "check_wordcount.php",
                type: "post",
                data: {
                    wordcount: 5
                }
            }
        }
    }
}

我在时间上遇到了一些问题,但我认为其中一些只是我匆忙做的事情,但它确实有效。在这种情况下,远程脚本必须返回true元素名称,所以我的 php 脚本如下所示:

$message = $_POST['message'];
$wordcount = (int) $_POST['wordcount'];
$valid = (str_word_count($message) >= $wordcount);

echo json_encode(array('message' => $valid));
于 2012-04-10T07:30:18.907 回答
1

这是另一种解决方案,它向验证器添加了自定义规则,这是一种简单、可重用、干净的方式来完成工作。

$.validator.addMethod("wordCount", function(value, element, wordCount) {

    return value.split(' ').length <= wordCount;

}, 'Exceeded word count');'Exceeded word count of ' + len + ' or less');

如何使用它

rules: {
  fieldName: { 
    required: true,
    wordCount: 300
  }
},
messages: {
  fieldName: { 
    required: 'Statement of justification is required',
    wordCount:'Please shorten to 300 words or less.'
  }
}
于 2018-12-17T22:17:24.830 回答
0

通过http://roshanbh.com.np/2008/10/jquery-plugin-word-counter-textarea.html

或者如果您只想计算字长,请使用

   var myLength = $("#myTextbox").val().length;

$("#mytextbox") 通过 id 查找文本框。

.val() 获取用户输入的输入元素的值,是一个字符串。

.length 获取字符串中的字符数。并且无论如何您都可以检查它并发出警报消息。

于 2012-04-10T07:27:29.087 回答