2010-11-09 163 views
2

这个问题看起来很简单,但我无法正确理解。Jquery:遍历li并获取元素

<ul id="myUL"> 
    <li id="item1"> 
     <select class="partDesc"><option>Front</option><option>Rear</option></select> 
     <input type="text" class="itemDesc"> 
     <img src="images/myimg.jpg" class="itemImg" > 
    </li> 
    <li id="item2"> 
     <select class="partDesc"><option>Front</option><option>Rear</option></select> 
     <input type="text" class="itemDesc"> 
     <img src="images/myimg.jpg" class="itemImg" > 
    </li> 
</ul> 

这些<li>项目使用jQuery动态添加。 我想遍历这些<li>项目并获取所有输入,包括从partDesc中选择的值,从itemDessrc中的文本从itemImg

这里就是我坚持:

$("#myUL li").each(function() {<br> 
    var partDesc = $(this).??;<br> 
    var itemDesc = $(this).??;<br> 
    var itemImg = $(this).??;<br> 
}); 

谢谢您的阅读。

回答

2

以下脚本应该可以帮到你。这里是demo

$("#myUL li").each(function() { 
    var partDesc = $(this).find('.partDesc').val(); 
    var itemDesc = $(this).find('.itemDesc').val(); 
    var itemImg = $(this).find('.itemImg').attr('src'); 
    alert('partDesc: '+partDesc); 
    alert('itemDesc: '+itemDesc); 
    alert('itemImg: '+itemImg); 
}); 
+0

哇,这么快。谢谢。 – Dreteh 2010-11-09 07:17:05

1
$("#myUL li").each(function() { 
    var partDesc = $(this).children("select:selected").text(); 
    var itemDesc = $(this).children("input").val(); 
    var itemImg = $(this).children("img").attr("src"); 
}); 
+0

感谢您的快速回复。 – Dreteh 2010-11-09 07:22:35