jQuery中用于ajax加载文本区域的字符计数器?

jQuery中用于ajax加载文本区域的字符计数器?,jquery,Jquery,字符计数已经涵盖了很多-我不知道如何让它计数动态加载的内容 我正在使用一个很好的jQuery插件。它与同一页面上的输入/文本区域配合得很好,但如果我尝试通过ajax调用加载内容,它就会停止工作。以下是我目前的代码: 这是字符计数器: $(document).ready(function(){ $(".countable").jqEasyCounter({ 'maxChars': 250, 'maxCharsWarning': 230, 'msg

字符计数已经涵盖了很多-我不知道如何让它计数动态加载的内容

我正在使用一个很好的jQuery插件。它与同一页面上的输入/文本区域配合得很好,但如果我尝试通过ajax调用加载内容,它就会停止工作。以下是我目前的代码:

这是字符计数器:

$(document).ready(function(){

 $(".countable").jqEasyCounter({
        'maxChars': 250,
        'maxCharsWarning': 230,
        'msgFontSize': '11px',
        'msgFontColor': '#000',
        'msgFontFamily': 'Verdana',
        'msgTextAlign': 'right',
        'msgWarningColor': '#F00',
        'msgAppendMethod': 'insertAfter'                
    });
});
这是加载动态内容的ajax调用:

    $(document).on("change", "#sitedrop_id", function(event){   
  $.post(
   'load_site.php',
    $("#siteselectform").serialize(),
    function(data){
      $("#sitedata").html(data)
    }
  );
  return false;
  });
这是从另一页加载的表单的文本区域之一:

<p>
    <label for="headermsg_id" style="width:150px">Heading</label><textarea
class="countable" rows="4" cols="55" name="headermsg" id="headermsg_id"
style="resize: none; font-family:Arial, Helvetica, sans-serif; font-size:12px;">
</textarea>
</p>

标题

我正在使用jQuery1.9.1,我尝试了
$(document)。在(“change”、“#headermsg_id”、函数(event){
上,然后是计数器,但这也不起作用

任何帮助都将不胜感激。
谢谢

在用ajax加载的内容替换您的内容后重新初始化计数器插件,例如:

var initCounter = function () {
    $(".countable").jqEasyCounter({
        'maxChars': 250,
        'maxCharsWarning': 230,
        'msgFontSize': '11px',
        'msgFontColor': '#000',
        'msgFontFamily': 'Verdana',
        'msgTextAlign': 'right',
        'msgWarningColor': '#F00',
        'msgAppendMethod': 'insertAfter'                
    });
};


$.post({
    ...
    function(data){
      $("#sitedata").html(data);
      initCounter();
    }
});

用ajax加载的内容替换内容后,重新初始化计数器插件,例如:

var initCounter = function () {
    $(".countable").jqEasyCounter({
        'maxChars': 250,
        'maxCharsWarning': 230,
        'msgFontSize': '11px',
        'msgFontColor': '#000',
        'msgFontFamily': 'Verdana',
        'msgTextAlign': 'right',
        'msgWarningColor': '#F00',
        'msgAppendMethod': 'insertAfter'                
    });
};


$.post({
    ...
    function(data){
      $("#sitedata").html(data);
      initCounter();
    }
});

您发布的代码中没有ID为sitedata的元素。请尝试替换

$("#sitedata").html(data)


因为这是您发布的唯一一个具有类countable的元素,并且只有那些元素会被计数,因为您已使用选择器“.countable”初始化easyCounter。发布的代码中没有ID为sitedata的元素。请尝试替换

$("#sitedata").html(data)


因为这是您发布的唯一一个具有countable类的元素,并且只有那些元素被计数,因为您已经用选择器“.countable”初始化了easyCounter

#sitedata是加载ajax内容的地方-textarea具有类
countable
。是的,但是元素#sitedata必须获得类countable,或者您必须将文本与此类一起放入textarea。或者,您可以扩展用于初始化插件的选择器:$(“.countable,#sitedata”).jqEasyCounter({…})#sitedata是加载ajax内容的地方-textarea具有类
countable
。是的,但是元素#sitedata必须获得类countable,或者必须将文本与此类一起放入textarea。或者,您可以扩展选择器以初始化插件:$(“.countable,#sitedata”).jqEasyCounter({…})