如何能知道用户在我的textarea中输入了多少个空格

我想做一个像发微博时候一样的字符限制,微博的做法是输入两个空格算一个字,那我该如何知道用户输入了多少个空格,length只能知道获得的字符的数量

阅读 5.1k
6 个回答

for 循环判断就好了

新手上路,请多包涵

把空格replace掉然后减一下?

微博是实时统计的。不考虑低版本IE浏览器你可以使用监控Input事件然后可以使用楼上的方法统计
也可以监听键盘事件来判断他输入的是不是空格这种办法也需要监听他的copy事件

这个东西当然是做输入的实时监听了
propertychange 或者考虑keydown

<!DOCTYPE html>
<html>
<head>
 <meta charset="UTF-8">
 <link rel="stylesheet" href="http://cdn.bootcss.com/bootstrap/3.3.4/css/bootstrap.min.css">
 <script src="http://cdn.bootcss.com/jquery/1.11.2/jquery.min.js"></script>
 <script src="http://cdn.bootcss.com/bootstrap/3.3.4/js/bootstrap.min.js"></script>
</head>
<body>
<textarea>
</textarea>
<label id="hint"></label>
</body>
<script>
    $('textarea').bind('input propertychange', function() {
      var textObj = $(this);
      var text    = textObj.val();
      num = 0;
      for(var i=1; i< text.length; i++){
        if(text.charAt(i)==' '){
            num ++;
        }
      }
      $("#hint").html("空格有" + num);
    });
</script>

</html>


空格个数:textreaValue.split(' ').length-1;

而且怎么区别打字时候用的空格与输入时候直接打的回车

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题