javascript - 检查所有输入字段是否已使用 jQuery 填写

标签 javascript jquery

我有 3 个 div,每个都有几个输入字段和下一步按钮。 我想编写一个 jQuery 片段,当单击下一个按钮时,它会检查以确保与按钮位于同一 div 内的所有输入字段都不为空。

我已经尝试了以下但没有成功,但我 100% 肯定它是错误的,只是我无法在网上找到相关信息......

http://jsfiddle.net/xG2KS/1/

最佳答案

你可以使用 filter将所有 input 元素的集合减少到只有那些为空的元素,并检查剩余内容的 length 属性:

$(".next").click(function() {
    var empty = $(this).parent().find("input").filter(function() {
        return this.value === "";
    });
    if(empty.length) {
        //At least one input is empty
    }
});

注意上面代码中empty的定义是一个空字符串。如果您也想将空格视为空,则可能需要在比较之前 trim 该值。

另请注意,无需在 filter 函数内将 this 传递给 jQuery。 DOM 元素本身将有一个 value 属性,访问它比使用 val 快得多。

这是一个 updated fiddle .

关于javascript - 检查所有输入字段是否已使用 jQuery 填写,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8907835/

相关文章:

javascript - jQuery 悬停产生错误 "Uncaught SyntaxError: missing )"

javascript - 使用 GSAP 将副本 SVG 元素插入到 DOM 中

jquery - 替换这个功能好像不起作用?

javascript - Moment.js时间格式错误

Javascript将多个对象插入一个空对象

jquery - ajax请求,但是刷新整个页面?

jquery - 旋转分区使用离屏幻灯片动画

javascript - 如何通过jquery或CSS放大和缩小循环动画中的元素

javascript - https 请求出现问题

javascript - 为什么这段代码在 javascript 中运行?对象内部函数