Hallo,
- wir wissen nicht, wieviele Zeilen es jeweils sind. Die Maximalzahl ist parametriersierbar (z.B. 10).
Das macht an sich nichts. Du kannst die Anzahl der Formulare einfach mit Javascript durch "document.forms.length" abfragen. Damit kannst Du auch sofort das letzte Forumlar ansprechen: "document.forms[document.forms.length]"
- wir können per asp-Script beliebige Variablen im Body-Frame mit ausgegebn lassen, so z.B. maxZeileNr.
Das ist unnötig. s.o.
Das Problem an der ganzen Sache ist, daß Eure Lösung mit einem Vor-Knopf in einem anderen Frame nur mittels JavaScript realisierbar ist. Ansonsten ist ein Benutzereingriff im Body-Frame notwendig, was ihr aber anscheinend ja nicht wollt. Sonst könntet ihr Euch ja den Vor-Knopf sparen.
Wie können wir am geschicktesten die jeweils letzte Zeile mit submit() übertragen lassen? Wie kann man das Submit-Ziel, das ja eigentlich in <form action" " schon festgelegt ist, noch ändern?
<inputy type="button" .. onClick="parent.frames["body"].document.forms[xxx].submit()"> übertragt das Formular xxx im Body-Frame.
Meine Methode, um das Verweisziel zu ändern ist mir nicht bekannt. Was man machen könnte:
Man generiert mit JavaScript einen Get-String, den man auch mit JavaScript an den Server senden kann. Man kann alle Formularinhalte auslesen und entsprechend verknüpfen. Falls die Daten mit POST übertragen werden sollen, kenne ich keine Lösung.
- input type=hidden
IMHO die beste Lösung, da man so immer noch eine Notlösung für Leute OHNE JS bauen kann. im <noscript>-Bereich kann man dann einfach ein Submit-Button einfügen, den man ja nicht sieht, wenn man JS aktiv hat.
So kann man auch ohne JS die Daten zum Server übertragen.
- JavaScript-Variable
Würde ich wg. der fehlenden Möglichkeit der "Notlösung" (s.o.) nicht machen. An sich ginge dies aber auch. Dann muß man allerdings bedenken, daß nur die Methode in Frage kommt, wo man mit JS den GET-String bastelt und den an den Server überträgt.
- per VB-Script eine entsprechende Funktion mit an body übergeben.
VB ist nicht so meine Sache und funktioniert nur im IE. So würde ich es NICHT machen.
Viele Grüße und viel Erfolg...
Alex :)