使用最近的属性Jquery获取Div元素内的输入标记计数

时间:2016-06-22 03:09:11

标签: javascript jquery html

我知道这是一个愚蠢的问题,但我无法找到解决方案。敲了几个小时。

我有一个HTML结构,

<div class= 'container'>
    <div class="someclass">
        <input>some content</input>
        <input>some content</input>
    </div>
    <input id="question-xxx" type="hidden"></input>
</div>

我需要使用id =“question-xxx”获取class ='someclass'中所有Input元素的计数。

我尝试使用

$("#question-xxx").closest('.someclass').find('input').length;

$('#question-xxx').closest('.someclass').children().length;

我用Google搜索了,我不知道我做错了什么。任何帮助都会非常明显。

2 个答案:

答案 0 :(得分:1)

使用.someclass尝试closest找不到

siblings

closest用于查找给定parent element的{​​{1}}。此处element不是someclass的父级。

question-xxxclosest相同。您可以找到更多信息here

parent

答案 1 :(得分:0)

&#13;
&#13;
var count = $('#question-xxx').prev('.someclass').find('input').length;
alert(count)
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class= 'container'>
    <div class="someclass">
        <input>some content</input>
        <input>some content</input>
    </div>
    <input id="question-xxx" type="hidden"></input>
</div>
&#13;
&#13;
&#13;

  1. 使用.prev()获取包含输入的div
  2.   

    描述:获取匹配元素集中每个元素的前一个兄弟。如果提供了选择器,则仅当它与该选择器匹配时才会检索前一个兄弟。

    1. 使用.length来计算