jQuery元素变量似乎不可访问?

时间:2010-06-18 12:51:42

标签: javascript jquery jquery-selectors

所以我得到了一组表单元素,我想通过使用

从中提取值
var inputs = $("input.row_2");
inputs[0].val()

当我运行这个时,我被告知val不是一个有效的方法。

我做错了什么?

应该是一个简单的..
谢谢!

3 个答案:

答案 0 :(得分:1)

inputs[0]会返回DOM元素,因此inputs[0].value将拥有您想要的内容。

您还可以使用inputs.eq(0).val(),如果没有匹配项,则永远不会抱怨inputs[0]未定义。

.eq()返回一个jQuery对象(不是DOM)而不是.get(),这也是你使用[0]

获得的结果

答案 1 :(得分:0)

jquery对象的行为类似于DOM元素数组 因此,inputs[0]返回原始DOM元素,而不是jQuery包装器 由于原始DOM元素没有val()方法,因此您收到错误。

要在特定元素上调用jQuery方法,您应该调用eq() method,如下所示:

inputs.eq(0).val();

在您的情况下,您还可以从原始DOM元素中获取value属性,如下所示:

inputs[0].value

但请注意,对于val()元素,这不会像jQuery的<select>

答案 2 :(得分:0)

$('input.row_2').first().val();