"Per Erik Gransøe" <per@dont.spam.gransoe.dk> writes:
> Hej alle.
>
> Jeg har en form på en side med nogle input tags. Nogle er af typen BUTTON,
> andre af typen IMAGE. Jeg skal i en function finde samtlige input tags til
> senere efterbehandling. Men følgende rutine finder ikke mine IMAGE type
> input tags:
>
> function scanFirstForm()
> {
> for(var i=0 ; i < document.forms[0].elements.length;i++)
> {
> var myElement = document.forms[0].elements[i];
> alert('Element found: ' + myElement.id);
> }
> }
>
> Er det mon fordi IMAGE typerne ikke influerer på svaret til webserveren ved
> en submit af formen?..
Det ved jeg faktisk ikke, men det lyder sandsynligt. Image-input-elementer
er jo submit-knapper.
> Og - hvordan klarer jeg den sag?
jeg ville bruge
document.getElementsByTagName("input")
til at få en samling af alle input-elementerne. Det er DOM og virker
kun i nyere browsere (det findes i hvert fald i Mozilla, Opera 7 og IE6,
jeg har ikke lige adgang til ældre IE'er).
Hvis det ikke er godt nok, så kan man genneløbe DOM-strukturen og
finde alle efterkommere der har tagName="input":
function findTag(elem,tag) {
tag = tag.toLowerCase();
var res=[];
if (elem.nodeType == 1) {
if (elem.tagName.toLowerCase() == tag) res[0]=elem;
for (var c=elem.firstChild;c!=null;c=c.nextSibling)
res=res.concat(findtag(c,tag));
}
return res;
}
Man kan så lave et array af alle input-elementer ved
findTag(document.body,"input");
/L
--
Lasse Reichstein Nielsen - lrn@hotpop.com
Art D'HTML: <URL:
http://www.infimum.dk/HTML/randomArtSplit.html>
'Faith without judgement merely degrades the spirit divine.'