jQuery限制返回的结果/选择

时间:2014-01-22 13:58:32

标签: jquery

是否可以限制jQuery中返回的结果

<body>
  <div id="box">
    <ul>
        <li>One</li>
        <li>Two</li>
        <li>Three</li>
        <li>Four</li>
        <li>Five</li>
        <li>Six</li>        
    </ul>         
  </div>  

  <script>
      $(function(){
          var num = 4;
          console.log( $('#box').children(':first').children(num).text() );
      })
  </script>
</body>

这将输出:

  

OneTwoThreeFourFiveSix

但我想:

  

OneTwoThreeFour

Demo Fiddle http://jsfiddle.net/JLqrc/

3 个答案:

答案 0 :(得分:6)

您可以使用:lt()

$('#box').children(':first').children(':lt('+num+')');

或正如MackieeE评论缩短代码

$('#box li:lt('+ num +')').text()

DEMO

文档:http://api.jquery.com/lt-selector/

答案 1 :(得分:2)

你也可以使用.slice

$('#box ul li').slice(0,4).text();

这使您可以更好地控制返回的4个元素 - 因为您可以将其更改为.slice(1,4)并且它将返回TwoThreeFourFive等

以下是一个示例:JSFiddle

答案 2 :(得分:0)

$(function(){
      var num = 4;
    console.log($("#box ul li:lt("+num+")" ).text());

  })