【问题标题】:Limit characters on multiple items限制多个项目的字符
【发布时间】:2014-03-08 02:37:04
【问题描述】:

我有多个由 PHP 生成的 div,我试图限制我在此类下的每个“div p”标签上的字符。

每个段落都有不同的引用,但需要限制在 140 字数以内。但是我确定我忽略了一些部分,使其一个一个地选择每个“div p”并进行调整字数限制。

var txtlimit = $('.release p').text();
txtlimit = txtlimit.substring(0, 141);
$('.release p').html(txtlimit);
console.log(txtlimit);

http://jsfiddle.net/G5BLx/

【问题讨论】:

    标签: javascript jquery html


    【解决方案1】:

    您应该从您的 php 脚本中执行此操作。但是如果您出于某种原因想在客户端执行此操作,您可以这样做..

    $('.release p').each(function(){
      var txtlimit = $trim($(this).text());
      if (txtlimit.length > 140) {
         txtlimit = txtlimit.substring(0, 140);
         $(this).html(txtlimit);
      }
    
    });
    

    ## 对不起,我错过了你的台词字数高达 140

     $('.release p').each(function(){
       var aParagraphTxt = $trim($(this).text()).split(" ");
       var wordCount     = aParagraphTxt.length;
    
       if (wordCount > 140) {
          $(this).html(aParagraphTxt.slice(0,139).join(" "));
       }
     });
    

    【讨论】:

    • 谢谢,我不太懂PHP,但我懂一点javascript。所以我是从客户端编辑这个的,因为它是一种糟糕的编码实践。
    【解决方案2】:

    你的意思是这样做吗?

    $('.release p').each(function() {
        var txtlimit = $(this).text();
        txtlimit = txtlimit.substring(0, 141);
        $(this).html(txtlimit);
        console.log(txtlimit);
    }
    

    【讨论】:

      【解决方案3】:

      你选择p标签的方式,你会用与第一个相同的文本设置它们,你需要通过它们中的each来相应地设置它们的文本

      $.each($('.release p'),function(index, value){
         var txtlimit = $(this).text().split(" ");      //splits into array of words
         $(this).html(txtlimit.slice(0,139).join(" ")); //get words from 0 to 139
      });
      

      FIDDLEhttp://jsfiddle.net/y53r7/3/

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2016-05-29
        • 1970-01-01
        • 2018-04-20
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多