JavaScript - 如果之前没有文本,如何从textarea中删除新行?

时间:2015-04-06 06:43:07

标签: javascript jquery

我有一个textarea,如果按下返回键,我想从中删除新行,而不写任何文本。我试过这个,但它不起作用:

function keypress(id) {
  $("#"+id).keypress(function(event) {
    $("#"+id).val().replace(/\n/g, "");
  });
}

2 个答案:

答案 0 :(得分:2)

尝试

function keypress(id) {
    $("#" + id).keyup(function (event) {
        $(this).val($(this).val().replace(/^\s*(\n)\s*$/, ''))
    });
}

演示:Fiddle

答案 1 :(得分:0)

为什么不使用Javascript trim方法。

来自https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String/Trim

  

trim()方法从字符串的两端删除空格。   在这种情况下的空白是所有的空白字符(空间,   选项卡,不间断空格等)和所有行终止符(LF,   CR等。)。

function keypress(id) {
   $("#"+id).keypress(function(event) {
      $("#"+id).val().trim();
   });
}