在textarea中的每个单词之前插入字符

时间:2015-08-13 07:56:24

标签: jquery

在textarea中的每个单词之前插入字符 仅使用jquery,在textarea中输入的每个单词之前插入字符“#”。问题是只有#在第一个单词中插入。我已经完成了 演示于:http://jsfiddle.net/LKUbr/11/

match

2 个答案:

答案 0 :(得分:1)

我不知道你究竟想要什么,但是

    $("#event_content").keyup(function(e,v){
    var text = $(this).val();
    return $(this).val(text.replace(" ", "#"));
   });

它将返回abc #sd #sd,每个空格将被#

替换

http://jsfiddle.net/jrx5Z/49/

答案 1 :(得分:1)

完成代码后,您可以添加空格。否则他们会继续增加。正则表达式可用于解决此问题。

$("#event_content").keyup(function () {
    var text = $(this).val();
    if(text.charAt(0) !== '#')
        text = '#' + text;
    text = text.replace(/( )+(#)*( )*/g, " #");
    return $(this).val(text);
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.0/jquery.min.js"></script>
<textarea id="event_content" cols="60" rows="20"></textarea>