我希望这样,当用户按下回车键进行换行时,它会产生双重中断:\n\n
。
有没有办法通过jQuery&正则表达式?
最好在粘贴文本时,将单个中断转换为双重中断。
最终的结果将是一个文本区域,其中几乎不可能进入一个单独的新线而不是两个。
答案 0 :(得分:1)
试试这个http://jsfiddle.net/psXn5/
// main code
function replaceLineBreak() {
// save caret position
var caret = $(this).caret();
text = $(this).val();
// adjust caret position
var linebreak = text.match(/\n/g);
if (linebreak != null) {
caret += linebreak.length * 3
}
$(this).val( text.replace(/\n/g, "\\n\\n") );
// restore caret position
$(this).caret(caret);
}
// update on change
$('textarea').change(replaceLineBreak);
// update on key up
$('textarea').keyup(replaceLineBreak);
答案 1 :(得分:0)
我无法清楚地了解你在寻找什么。以下是添加两个中断的示例Fiddle
$('#textareaid').keyup(function() {
$('#divid').html($(this).val().replace(/\n/g,'<br/><br/>'));
});
如果您想在输入键上添加\n\n
,请按此
$('#textareaid').keypress(function(event) {
if (event.which == 13) {
event.preventDefault();
var s = $(this).val();
$(this).val(s+"\n\n");
}
});
答案 2 :(得分:0)
$('#textbox').keyup(function (e) {
if (e.keyCode == 13) {
$("#textbox").append("\n\n");
}
});
它检查您的点击是否输入,然后它会在文本框的末尾添加两个\ n。鉴于您的textarea被称为文本框。