2011-10-10 41 views
2

如果我有一個大的表單,並且只想遍歷它的一部分(div#traverseMe中的元素),那麼最好的解決方案是做什麼。下面是一個例子形式:jQuery遍歷一個表格的一部分

<form id="form1"> 
<input type="text" name="text1" /> 
<div id="traverseMe"> 
    <input type="text" name="text2" /> 
    <input type="text" name="text3" /> 
</div> 
</form> 

我想獲得的是其內部traverseMe所有(只)表單元素。我目前正在使用一種JavaScript函數,它循環遍歷表單中的所有子項(document.forms['form1'][i]),目的是將表單轉換爲XML,這對於整個表單來說是很好的,但考慮到我只需要一部分表單就可以了。有沒有合適的jQuery解決方案?

回答

1

嘗試 -

$("#traverseMe > :input").each(function() { 
    //do someting 
})  

演示 - http://jsfiddle.net/ipr101/v3scP/1/

+0

我想添加'#form1'確實不會因爲ID('#traverseMe')的增加而增加太多。 – pimvdb

+0

@pimvdb - 謝謝指出 - 答案相應改變。 – ipr101

+0

這也適用於選擇和textarea標籤? –

1

你可以使用它的ID在選擇:

$('#traverseMe input').each(doStuff); 

或者你也可以通過上下文jQuery的構造函數:

var context = document.getElementById('traverseMe'); 
$('input', context).each(doStuff); 
+0

我喜歡傳遞語境的能力,我以前沒有見過,謝謝 –