无法在使用脚本放置逗号的文本区域中退格

时间:2018-12-09 22:49:59

标签: javascript comma backspace

我正在使用此脚本在每个键入的项目之后自动放置一个逗号空格,然后按空格键。

但是由于某种原因,我根本无法弄清楚如何使其退格。

我希望它能够删除整个项目并在每个退格符后加上逗号。

user_id

1 个答案:

答案 0 :(得分:0)

它仅启用退格键:

$('#textarea').keyup(function(e) {
  if (e.which === 8) { // backspace detected
      return;
  }
  var str = this.value.replace(/(\w)[\s,]+(\w?)/g, '$1, $2');
  if (str!=this.value) this.value = str; 
});

编辑:完整版:

$('#textarea').keyup(function(e){
    var str = this.value;
    if (e.which === 8) {
        var tmp = str.split(', ');
        tmp.splice(tmp.length - 1, 1);
        str = tmp.join(', ');
        this.value = str;
        return;
    }
    str = str.replace(/(\w)[\s,]+(\w?)/g, '$1, $2');
    if (str!=this.value) this.value = str; 
});