var tmp = ($(o.ulProvince).append("<li id='" + item.id + "'  >" + unescape(item.name) + "</li>"))[0];怎样获取刚才添加的 li 元素?
我用jq的。。
我知道可以直接document.getElementById()
但又没有直接的?

解决方案 »

  1.   

    $(o.ulProvince).childNodes[$(o.ulProvince).childNodes.length-1];
    $(o.ulProvince).childNodes是获取$(o.ulProvince)对象的所有子节点集合。新添加的li元素应该是该对象的子节点的最后一个元素。
      

  2.   

    你也可以试下:$(o.ulProvince).lastChild.
      

  3.   

    说得对。但是还不是我想要的。    var tmp = ($(o.ulProvince).append(" <li id='" + item.id + "'  >" + unescape(item.name) + " </li>"))[0]; 他不是返回jq对象的吗?
    我反过来appendto可以返回li对象吗?
      

  4.   

    方法还有很多,你也可以获取$(o.ulProvince)中的子对象集合的标签名来获取:
    $(o.ulProvince).getElementsByTagName("li")[$(o.ulProvince).getElementsByTagName("li").length-1];
    集中$(o.ulProvince).getElementsByTagName("li")是获取该对象中,所有标签为li的节点对象。
      

  5.   

    appendto?不可以吧。你可以把$(o.ulProvince)对象中的所有子对象打出来。看哪个是你想要的。
      

  6.   

    jQuery 代码:
     $("<p/>")
       .appendTo("div")
       .addClass("test")
       .end()
       .addClass("test2");结果:
    <div><p class="test test2"></p></div>
    <div><p class="test"></p></div> 
    你帮我解析下 上面可以吗?
    怎么有两个dic呢?