javascript - 找出文本区域中的行是否为空

标签 javascript jquery regex

我正在使用这段代码来检查插入符号是否位于文本区域内的空行上。它运行良好但有一个缺陷:如果你以一些文本开始一行并以空格结束它,代码会认为该行是空的;这不是真的。由于自动换行,我不关心行。

这是一个 fiddle :http://jsfiddle.net/jZN5w/

$('#area').on("keyup change focus", function() {
    if( this.value.substr(0,this.selectionStart).match(/(?:^|\s+)$/)
     && this.value.substr(this.selectionStart).match(/^(?:\s+|$)/)) {
        console.log("empty");
    } else {
        console.log("has stuff");
    }
});

这将记录“有东西”

上面的行将记录为空,而这行将记录“有东西”如果我以空格结尾,这将记录为空

最佳答案

您的正则表达式不查找空行,而是查找空格。

$('#area').on("keyup change focus", function() {
    if( this.value.substr(0,this.selectionStart).match(/(?:^|\n|\r)\s*$/)
     && this.value.substr(this.selectionStart).match(/^\s*(?:\n|\r|$)/)) {
        console.log("empty");
    } else {
        console.log("has stuff");
    }
});

http://jsfiddle.net/jZN5w/6/

关于javascript - 找出文本区域中的行是否为空,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20985880/

相关文章:

java - 来自/etc/passwd 和/etc/group 的行的正则表达式

r - 如何从文件路径字符串中提取日期,其中还包括格式为 2020.04.12.10.30.10 的时间?

regex - 如何正则表达式以数字结尾的字符串并对每个部分进行分组

javascript - 使用 a4j :commandButton 防止双重提交

javascript - 在jquery中获取被点击元素的文本

javascript - 如何在javascript中删除嵌套数组对象中的对象

javascript - 无法使用 AJAX 将 PHP 变量获取到 JavaScript 文件

javascript - 在 Javascript 中使用 YUI,如何在数据表/滚动数据表上绘制叠加层?

jquery - 样式化 Jquery-ui 选项卡

javascript - 通过带有 jQ​​uery 的按钮跳到 HTML5 视频中的特定时间