Textboxen einblenden/ausblenden per Mausklick auf Textlink

Status
Nicht offen für weitere Antworten.

draig

Mitglied
Also bin total neu auf den Gebiet :( . Bisher habe ich es in php gemacht, aber die Lösung ist nicht gut, da dann die Seite neu geladne werden muss und man die Daten neu eingeben muss. So jetzt komme ich dazu wa sich eigendlich möchte.

Ich habe eine Tabelle mit den Zahlen 0 bis 5. Wenn ich jetzt auf 0 klicke, soll keine Textbox angezeigt werden, wenn ich auf 1 klicke soll eine Textbox angezeigt werden, und wenn ich auf 2 klicke 2 Textboxen usw. Also keine Ergänzung, sondern das sich nur die Anzahl auf die entsprechenden Boxen ändert. Wenn ich vorher auf 1 geklickt habe und dann auf 2, soll die 1 Textbox weggeblendet werden und die 2 Textboxen angezeigt werden. Diese Textboxen sollen
in einer Tabelle angeziegt werden, die dann mitgeladen wird,sobald ich auf einer Zahl klicke. Das heisst, wenn ich auf 0 Klicke sollte gar nichts angeziegt werden, aslo auch keine Tabelle.


Thx in vorraus.


Alle Rechtschreibfehler gehören den Autor und unterstehen den Copyright. :)
 
Zuletzt bearbeitet:
Hallo....

das könntest du bspw. so machen:
Code:
<html>
<head>
<title>test</title>
<script type="text/javascript">
function mach_felder(nr)
{
htm='';
for(i=0;i<nr;++i)
    {
    htm+='<tr><td><input type="text"size="10"></td></tr>';
    }
if(nr>0)
    {
    htm='<form><table>'+htm+'</table>';
    }
document.getElementById('felder').innerHTML=htm;
}
</script>
</head>
<body>
<table>
 <tr><td><a onclick="mach_felder(0)">0</a></td></tr>
 <tr><td><a onclick="mach_felder(1)">1</a></td></tr>
 <tr><td><a onclick="mach_felder(2)">2</a></td></tr>
 <tr><td><a onclick="mach_felder(3)">3</a></td></tr>
 <tr><td><a onclick="mach_felder(4)">4</a></td></tr>
 <tr><td><a onclick="mach_felder(5)">5</a></td></tr>
</table>
<span id="felder">&ampnbsp;</span>
</body>
</html>
... beim Klick auf eine Zahl wird die Funktion "mach_felder()" aufgerufen... als Parameter wird der Funktion dabei die Anzahl
der zu erstellenden Felder übergeben.

Die Funktion schreibt dann die Tabelle mit den benötigten Feldern in das ursprüngliche leere <span> "felder".
 
fatalus

Das von Fatalus ist genau das richtige. Jetzt habe ich ein Prob. Alle Textboxen müssen einen anderen Namen habe, da was in einer Datenbank eingetragen wird.
 
Code:
htm+='<tr><td><input type="text"size="10" name="input' + i + '"></td></tr>';
In dem Fall werden die Namen durchnummeriert (`input1', `input2', `input3', usw...)
 
So ist es perfekt, es gibt aber ein neues Problem. Das Javascrript funktioniert nicht, wenn "<span id="felder">&nbsp;</span>" in <form>Button</form> steht.
 
ersetze mal
Code:
if(nr>0)
    {
    htm='<form><table>'+htm+'</table>';
    }
durch
Code:
if(nr>0)
    {
    htm='<table>'+htm+'</table>';
    }
....wer hat dort überhaupt das <form> hineingeschrieben :):-(
 
Ok jetzt. Gibt aber ein kleines formales Problem. Wenn ich die Seite öffne ist zwischen den 2 Tabellen eine Lücke, wenn ich auf 0 klicke ist sie weg. Wie bekomme ich es hin, das sie bei neu draufgehn auch weg ist?

Edit: Habe alles bereiningen können. Funktioniert jetzt wunderbar. Viele dank für eure Hilfe.
 
Zuletzt bearbeitet:
Status
Nicht offen für weitere Antworten.

Neue Beiträge

Zurück