Elementnummer ermitteln
Bernd
- javascript
Hallo zusammen,
man kann ja z.B. mit document.forms[0].elements[i].name den Namen eines bestimmten Elements des Formulars auslesen. Ich hab jedoch den Namen des Elements und möchte die dazugehörige Nummer ermittlen. Geht das mit JS?
Vielen Dank
Bernd
Hi,
Ich hab jedoch den Namen des Elements und möchte die dazugehörige Nummer ermittlen. Geht das mit JS?
wenn der Name eindeutig ist: sicher. Einfach durchzählen, bist Du das Element gefunden hast.
Cheatah
wenn der Name eindeutig ist: sicher. Einfach durchzählen, bist Du das Element gefunden hast.
Cheatah
Der Name ist eindeutig. Aber das mit dem durchzählen ist nicht so der hit. Das sind so ca. 5000 Elemente, was das Formular hat und würde ewig brauchen, bis es fertig ist. Gibts noch andere Möglichkeiten?
Gruss
Bernd
Hi,
Das sind so ca. 5000 Elemente
wow! Wer fuellt die denn aus?
Ansonsten, wofuer brauchst Du die Nummer, wenn sich die Referenzierung ueber den Namen viel eindeutiger erledigen laesst - naemlich unabhaengig von der Position?
Gruesse Joachim
Hi,
Das sind so ca. 5000 Elemente
wow! Wer fuellt die denn aus?Ansonsten, wofuer brauchst Du die Nummer, wenn sich die Referenzierung ueber den Namen viel eindeutiger erledigen laesst - naemlich unabhaengig von der Position?
Gruesse Joachim
Folgendes Problem:
ich habe Selectboxen, die wie folgt aussehen:
<select name="cart_value[08887277][Basic]">
<select name="cart_value[08887277][URL]">
<select name="cart_value[08887277][temp1]">
Die Nummer (z.B. "08887277") und "Basic" stehen immer fest. Aber "URL" und "temp1" wurden durch PHP dynamisch generiert. D.h., sie sind nicht bei jedem Aufruf vorhanden oder können andere Namen haben.
<select name="cart_value[08887277][Basic]">
<select name="cart_value[08887277][???]">
<select name="cart_value[08887277][???]">
Ich fange die Änderungen der "Basic-Selectbox" durch "onChange" ab. Bei einer Änderung muss ich den Index aller anderen Selectboxen mit der gleichen Nummer auf den ersten Eintrag setzten. Da aber die Namen nicht komplett bekannt sind, such ich jetzt nach einer Lösung. Jetzt wollt ich die Elementnummer von <select name="cart_value[08887277][Basic]"> auslesen und mit Hilfe dieser Nummer die restlichen Felder, die dazugehören ansteuern.
Gruss
Bernd
Hi,
Die Nummer (z.B. "08887277") und "Basic" stehen immer fest. Aber "URL" und "temp1" wurden durch PHP dynamisch generiert. D.h., sie sind nicht bei jedem Aufruf vorhanden oder können andere Namen haben.
Du sagtest doch, die Namen seien bekannt?
Ansonsten kannst Du mit typeof ueberpruefen, ob irgendwas string "object" oder string "undefined" ist. Wenn Du also weisst, dass es bei cart_value[08887277] maximal type1-10 geben kann, koenntest Du das Vorhandensein mit if(typeof ([moegliche_reverenz]) != "undefined") pruefen. Ansonsten bleibt Dir nur durch alles durchzuloopen.
Gruesse Joachim
Folgendes Problem:
ich habe Selectboxen, die wie folgt aussehen:
<select name="cart_value[08887277][Basic]">
<select name="cart_value[08887277][URL]">
<select name="cart_value[08887277][temp1]">Die Nummer (z.B. "08887277") und "Basic" stehen immer fest. Aber "URL" und "temp1" wurden durch PHP dynamisch generiert. D.h., sie sind nicht bei jedem Aufruf vorhanden oder können andere Namen haben.
<select name="cart_value[08887277][Basic]">
<select name="cart_value[08887277][???]">
<select name="cart_value[08887277][???]">Ich fange die Änderungen der "Basic-Selectbox" durch "onChange" ab. Bei einer Änderung muss ich den Index aller anderen Selectboxen mit der gleichen Nummer auf den ersten Eintrag setzten. Da aber die Namen nicht komplett bekannt sind, such ich jetzt nach einer Lösung. Jetzt wollt ich die Elementnummer von <select name="cart_value[08887277][Basic]"> auslesen und mit Hilfe dieser Nummer die restlichen Felder, die dazugehören ansteuern.
Hier ist nicht ganz klar was du meinst, also in welchem Bezug welche Elemente stehen.
Willst du in er gleichen Selectbox andere Elemente anwählen oder stehen in einer anderen Box Elemente, die im Zusammenhag mit der ersten stehen?
Aus deiner Erläuterung, rate ich mal, das dir es evtl. hilft, wenn du die relevanten Teile aus dem Namen rausfilterst, also url und tmpl, und diese dann wieder mit der entsprechenden Nummer zusammenbaust, oder hab ich das falsch verstanden?
Struppi.
gruss Bernd,
Das sind so ca. 5000 Elemente
Folgendes Problem:
ich habe Selectboxen, die wie folgt aussehen:
<select name="cart_value[08887277][Basic]">
<select name="cart_value[08887277][URL]">
<select name="cart_value[08887277][temp1]">Die Nummer (z.B. "08887277") und "Basic" stehen immer fest. Aber
"URL" und "temp1" ... sind nicht bei jedem Aufruf vorhanden oder
können andere Namen haben.<select name="cart_value[08887277][Basic]">
<select name="cart_value[08887277][???]">
<select name="cart_value[08887277][???]">Ich fange die Änderungen der "Basic-Selectbox" durch "onChange" ab.
sehr schoen, dann liegt hier ja auch der loesungsansatz - gib
Deiner wie auch immer genannten onchange-funktion einfach den
elementnamen mit: onchange="yourFunction(.., this.name, ..)";
jetzt extrahierst Du mit methoden Deiner wahl wie z.b.
"String.indexOf" oder "RegExp.test(String)" die fuer
eine elementgruppe gleichlautende schluesselnummer;
die bildungsvorschrift fuer die namen weiterer moeglicher
elemente dieser gruppe ist Dir bekannt - auf existenz
dieser elemente pruefst Du dann mit:
if (document.forms["formName"].elements["buildName"]) {
//weitere anweisungen;
}
fertig - tschoe - peterS. - pseliger@gmx.net