获取在另一个元素中找到的元素的值(多个类)

时间:2015-06-11 16:08:54

标签: javascript jquery

我目前正在尝试通过jquery选择器检索类anotherClass的输入字段的值。但是我得到一个空洞的结果。下面是我用来获取此值的不同方法,但无济于事,我得到了所需的结果。该类有许多输入字段,但input唯一的是label缠绕它。我如何检索下面显示的输入字段的结果?

HTML

<label class="class1 class2 class3" data-reactid=".0.1">
    <input class="anotherClass" type="text" data-reactid=".0.1.0" value="XXXXXXX" >
</label>

Jquery的

function getValue() {
    var element = document.querySelectorAll('.class1 .class2 .class3 input');
    return Array.prototype.map.call(element, function(e) {
        return e.getAttribute('value');
    });
}

3 个答案:

答案 0 :(得分:2)

您不需要类之间的空格,因为空间意味着您要使用后代。您可以将多个类与 dot 逗号组合在一起。

 var element = document.querySelectorAll('.class1.class2.class3 input');

或使用逗号

 var element = document.querySelectorAll('.class1,class2,class3 input');

答案 1 :(得分:1)

想象你的选择器就像你编写CSS一样:

var element = $('.class1.class2.class3 input');

答案 2 :(得分:0)

使用上面的html,它应该像

一样简单
$('.anotherClass').val();

如果您想从父母那里搜索,可以使用他们的课程

$('.class1.class2.class3 .anotherClass').val();

document.write($('.class1.class2.class3 .anotherClass').val());
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.10.1/jquery.min.js"></script>
<label class="class1 class2 class3" data-reactid=".0.1">
  <input class="anotherClass" type="text" data-reactid=".0.1.0" value="XXXXXXX">
</label>