Well, since it doesn't give you a unique ID/name (if you use array named form fields), you can't use getElementByName/ID on the resulting child.

Even more so, the previous/nextsibling method doesn't work on input fields that are inside previous/next table cells...I can't source this statement, but that's what happens when I put the form fields in table cells. You can just take the last example and put <tr><td> between fields. Bam, suddenly the function fails.