javascript - 删除文本区域中的一行

标签 javascript jquery

所以,我得到了一个 javascript 函数,可以在只读文本区域中添加行,例如: 如果我按下按钮来启动我的功能,我的文本区域包含:

Line abcdef

如果我再次点击,我会得到:

Line abcdef
Line ghijkl

功能是:

function addLine() {
    document.getElementById('myTextArea').value +=
        'Line ' + document.getElementById('textinput').value + '\r\n';
}

但现在我希望能够删除最新添加的行,以防用户犯错误并想要更正它。

有办法做到这一点吗?

最佳答案

按换行符分割,并删除最后一个:

function removeLine(selector) {
    var elem = document.querySelector(selector),
        val  = elem.value.split(/(\r\n|\n|\r)/g).filter(function(n){
                  return n.trim()
               });
    val.pop();
    elem.value = val.join('\r\n') + '\r\n';
}
// i.e. removeLine('#myTextarea');

FIDDLE

关于javascript - 删除文本区域中的一行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17259859/

相关文章:

javascript - 我可以在同一个插件中添加这段代码吗

javascript - 如何替换某个字母中的所有内容?

javascript - 类型错误 : TypeError: null is not an object (evaluating 'this.state.email' )

javascript - 按属性对 Div 进行排序 - asc 或 desc

javascript - 我什么时候应该将 Javascript 保留在 html 文件上?

javascript - 如果单击按钮,则将输入添加到表单

javascript - 将 require ('...' ) 与变量一起使用与在 webpack 中使用字符串

javascript - 异步 Node JS : Error: Callback was already called

javascript - 将 JavaScript 对象发送到其他页面

jquery - x 轴上显示时间,而不是 highstock 中显示日期