首页 > 解决方案 > 循环控制台内的jquery记录值

问题描述

尝试编写验证功能,但对于我来说,我无法获取输入值!

这是一个循环,我想控制台记录当前输入值,我该怎么做?

function is_empty() {
    for (var i=0; i < $('form input').length; i++) {
        console.log($('form input')[i]);
        console.log($('form input')[i].val);
    }
}

我在控制台中得到这个:

第一行:<input type="text" name="name" placeholder="Name..">

第二行:undefined

我怎样才能得到这些值?

谢谢..

标签: jquery

解决方案


使用 时$(...)[i],您访问的是底层元素,而不是包含该元素的 jQuery 集合。.val()是 jQuery 集合上的一个方法(注意括号 - 它是一个函数,所以你必须调用它)。在普通元素上,您应该使用.value来检索关联的值:

console.log($('form input')[i].value);

或者,如果您想使用 jQuery 方法,请使用eq将匹配元素的集合转换为仅包含该索引处的元素的集合,然后调用.val()

console.log($('form input').eq(i).val())

推荐阅读