2010-11-09 167 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