Javascript 在不编辑HTML的情况下限制输入字段中的字符数

Javascript 在不编辑HTML的情况下限制输入字段中的字符数,javascript,plugins,wordpress,maxlength,Javascript,Plugins,Wordpress,Maxlength,我正在WordPress网站上建立一个数据库。 我想限制用户可以在注册表单中的某些字段(textarea和input type=“text”)中输入的字符数。因为我使用的是插件,所以我不能编辑页面的HTML,所以我不能只使用maxlength属性 在不访问HTML的情况下,如何限制用户可以输入的字符数(最好还显示剩余字符数)?您能告诉我要编辑哪些文件、使用哪些代码以及将其放在哪里吗?您可以使用jQuery设置最大长度以及追加:剩余字符数 $("input").each(function() {

我正在WordPress网站上建立一个数据库。 我想限制用户可以在注册表单中的某些字段(
textarea
input type=“text”
)中输入的字符数。因为我使用的是插件,所以我不能编辑页面的HTML,所以我不能只使用
maxlength
属性


在不访问HTML的情况下,如何限制用户可以输入的字符数(最好还显示剩余字符数)?您能告诉我要编辑哪些文件、使用哪些代码以及将其放在哪里吗?

您可以使用jQuery设置最大长度以及追加:剩余字符数

$("input").each(function() {
    var $this = $(this);
    var maxLength = 50;
    $this.attr('maxlength', maxLength);

    var el = $("<span class=\"character-count\">" + maxLength + "</span>");
    el.insertAfter($this);

    $this.bind('keyup', function() {
        var cc = $this.val().length;

        el.text(maxLength - cc);
    });
});
$(“输入”)。每个(函数(){
var$this=$(this);
var maxLength=50;
$this.attr('maxlength',maxlength);
变量el=$(“”+maxLength+“”);
el.insertAfter($this);
$this.bind('keyup',function()){
var cc=$this.val().length;
el.文本(最大长度-cc);
});
});

您只需通过更改第一行上的
“input”
以及根据每个输入允许的最大字符数更改
maxLength
变量来指定要将函数应用于哪个输入。您可以修改此函数,以便为多个字段引入参数

以下是一个修改版本,允许您将其应用于多个输入:


使用MagJS很容易做到这一点

下面是一个完整的工作示例:

HTML:

<div id="limit">
  <h2>Characters left: <length/></h2>
  <input>
  <textarea></textarea>
</div>
下面是指向工作示例的链接:


希望有帮助

但是正如我写的,我不能编辑HTML,所以我不能这样做:
剩下的字符:
函数中。php
文件:
var demo = {}

demo.view = function(state, props) {

  state.textarea = state.input = { 

    _oninput: function() {

      state.length = props.limit - this.value.length;

      if (this.value.length > props.limit) {
        alert('max length reached:' + props.limit)
        this.value = this.value.substr(0, props.limit)
      }
    }
  }
}

var props = {
  limit: 10,
}

mag.module("limit", demo, props)