Dynamische Mehrfachwert-Felder im Web
Domino
hört sich ziemlich übel an, aber ist einfach erklärt. Angenommen, man möchte eine Maske zur Verfügung stellen, in welcher 1 - offen viele Vornamen und Nachnamen eingegeben werden. Und diese sollen zu allem Überfluß in einem Mehrfachfeld gespeichert werden .... any ideas?
Kategorie hört sich ziemlich übel an, aber ist einfach erklärt. Angenommen, man möchte eine Maske zur Verfügung stellen, in welcher 1 - offen viele Vornamen und Nachnamen eingegeben werden. Und diese sollen zu allem Überfluß in einem Mehrfachfeld gespeichert werden .... any ideas?
Als erstes fügen wir die Felder vorname und nachname in der Notes-Maske ein:
Wichtig ist hierbei einfach nur, dass auf dem HTML-Tab unter "Other" "type=hidden" eingetragen wird.
Als nächsten müssen wir einen Bereich in der Notes-Maske definieren, in welchem die dynamischen Felder eingetragen werden.
Machen wir durch ein DIV mit ID, ich habe als ID append gewählt.
Im Java-Script-Header definieren wir folgende Funktion:
function appendNode() {
var node = document.getElementById('append')
node.innerHTML = node.innerHTML +
"<table><td>" + "
"<nput type='text' id='vorname_i' name='vorname_i' value=''>" +
"</td><td>" +
"<input type='text' id='nachname_i' name='nachname_i' value=''>" +
"</td></tr></table>"
}
Diese Funktion hängt im definierten Bereich immer eine Tabelle mit den zwei Textboxen vorname_i und nachname_i an.
Funktion einmal im onload-Ereignis und zum Beispiel unter einem Button '*' aufrufen, hiermit kann folgendes Ergebnis erzielt werden:
Kräftiges Klicken auf * erzeugt eine neue Zeile
OK, sieht gut aus, doch wie kommen die Daten jetzt in die Domino-Felder......?
Im onsubmit folgenden Code rein:
var fieldnames = new Array('vorname','nachname')
for(i=0;i
var e = document.getElementsByName(fieldnames[i]+'_i')
if (e.length) {
for(j=0;j
if (j==0) {
document.forms[0].elements[fieldnames[i.value = evalue;
} else {
document.formselementsieldnames[i.value = document.formselementsieldnames[i.value + ';' + evalue;
}
}
}
}
Dieser kleine Code schaufelt die Daten von vorname_i nach vorname und nachname_i nach nachname.
Gruß JJR