<div class="yyy">
                        <ul class="xxx">
                              <li id="1" class='res'>1</li>
                              <li id="2">2</li>
                              <li id="3">3</li>
                              <li id="4">4</li>
                        </ul>
                  </div>-------------------------------------- $(function(){

$(".yyy>ul").append("<li class='navon'>5</li>");

var a= $(".yyy").find("li");
//a.push("<li class='res'>aa</li>"); a.find(".res").each(function(){
alert("a");
});
}==========后面的a.find怎么查询不出来数据?

解决方案 »

  1.   

    var a= $(".yyy").find("li") 得到的变量a为包装了标签为li的DOM数组,jQuery.find(selector)方法是在jQuery的后代元素中进行查找,find('.res'),下级不包含这样的元素,所以a.find('.res').length=0
      

  2.   

    在var a= $(".yyy").find("li"); 这句后面加一句 debugger;用js调试工具firebug看看a是什么,一目了然
      

  3.   

    同意二楼看法,find方法是在后代元素中查找,a是li元素,在li的子元素中查询li自然找不到东西。
    让a=$(".yyy")就行了。
    (楼主最后少写了一个右小括号)
      

  4.   

    $(function(){$(".yyy>ul").append("<li class='navon'>5</li>");var a= $(".yyy").find("li");
    a.push("<li class='res'>aa</li>");]a.find(".res").each(function(){
    alert("a"); 
    });
    }
    -------向a里面push一个元素,但是好像无法查找。很奇怪...
      

  5.   

    find('.res'),是有父子关系的这种。
      

  6.   

    对象a的push方法是添加了元素<li class="res">aa</li>,但这个元素是和"li"标签同级的,你使用find()方法只能找到"li"标签的后代元素,跟你的第一个问题没有区别。
      

  7.   


    <html xmlns="http://www.w3.org/1999/xhtml">
    <head runat="server">
        <title></title>
        <script src="jquery-1.4.4.js" type="text/javascript"></script>
        <script type="text/javascript">
            $(document).ready(function () {
                $("#bt").click(function () {
                    $(".yyy>ul").append("<li class='navon'>5</li>");
                    var a = $(".yyy");
                    a.find(".res").each(function () {
                        alert("a");
                    });
                });
            });        
        </script>
    </head>
    <body>
        <form id="form1" runat="server">
        <div class="yyy">
      <ul class="xxx">
      <li id="1" class='res'>1</li>
      <li id="2">2</li>
      <li id="3">3</li>
      <li id="4">4</li>
      </ul>
      </div>
        <input type="button" id="bt" />
        </form>
    </body>
    </html>