3

我已经制作了一个 textarea 表单,您可以在其中更改您的描述,就像我之前的问题一样,我问是否有任何禁止标签的方式。但是现在有什么方法可以让你按下Entera<br />将在 textarea 中设置,这样用户就不必在<br />每次想要换行时都输入?

我想如果它可以找到什么都没有的地方,但这会起作用吗?我不熟悉 onpress 事件......或者如果它在用户按下提交后检查输入,然后检查换行符。

我在 YouTube 、这个网站和许多其他网站上也看到过这个。

4

3 回答 3

9

在 PHP 中,您可以使用该nl2br()函数将任何换行符替换为<br />标签。

于 2011-11-26T14:40:08.420 回答
2
<script src="jquery.js"></script>
<script>
    $(function ()
    {
        $('#txt').keyup(function (e){
            if(e.keyCode == 13){
                var curr = getCaret(this);
                var val = $(this).val();
                var end = val.length;

                $(this).val( val.substr(0, curr) + '<br>' + val.substr(curr, end));
            }

        })
    });

    function getCaret(el) { 
        if (el.selectionStart) { 
            return el.selectionStart; 
        }
        else if (document.selection) { 
            el.focus(); 

            var r = document.selection.createRange(); 
            if (r == null) { 
                return 0; 
            } 

            var re = el.createTextRange(), 
            rc = re.duplicate(); 
            re.moveToBookmark(r.getBookmark()); 
            rc.setEndPoint('EndToStart', re); 

            return rc.text.length; 
        }  
        return 0; 
    }

</script>
<div id="content">
    <textarea id="txt" cols="50" rows="10"></textarea>
</div>
于 2011-11-26T14:41:05.817 回答
1

你可以这样做:

函数 createBr(e) {


   如果(e.keyCode == 13){
      document.createElement("BR");
       //用它做你想做的事
   }
}

希望能帮助到你

于 2011-11-26T14:41:01.713 回答