radiobutton blendet formular ein/aus
Andreas
- javascript
0 Fred K.
Hallo,
ich habe ein upload script in dem man per radiobuttons den bereich wählt, in den man die datei uploaden möchte.
nun folgendes problem:
wählt der user einen bestimmten radio button aus (nur bei einem erforderlich), so soll unter dem schon vorhandenen formular ein zweites erscheinen. soweit kein problem, dafür habe ich dieses javascript:
function ToggleTAGcontent(p_tag1, p_tag2) {
/*Example:
<span id="name_1_short">Kurztext <a href="JavaScript:ToggleTAGcontent('name_1_short', 'name_1_long')">....</a></span>
<span id="hiddenTAG"><span id="name_1_long">This is the tip text<br>
<a href="JavaScript:ToggleTAGcontent('name_1_short', 'name_1_long')">shorten</a></span></span>
Tag <span id="hiddenTAG"> contains the long text
*/
var v_tag_short = document.getElementById(p_tag1);
var v_tag_long = document.getElementById(p_tag2);
var v_txt_short=v_tag_short.innerHTML;
var v_txt_long=v_tag_long.innerHTML;
v_tag_short.innerHTML=v_txt_long;
v_tag_long.innerHTML=v_txt_short;
}
dieses erfüllt seinen dienst vollkommen korrekt.
wenn ich bei dem onchange event das js aufrufe, erscheint das formular. nun soll es aber wieder verschwinden wenn ein anderer radiobutton ausgewählt wird. die radiobuttons heißen alle "dir". ich dachte eigentlich, das onchange event würde auch anspringen wenn sich der status (checked/unchecked) durch klicken eines anderen radiobuttons wieder ändert.
gibts da schon lösungen ?
mit dem zusatz-event onblur auf den gleiche radiobutton habe ich das gewünschte ergebnis auch nicht erhalten.
vielen dank schonmal vorneweg
gruß andreas
Ich glaube ich habe mal vor Jahren das gleiche Programmiert. Es war ein Uploadscript mit ver. Radiobuttons die jeweils Panels öffneten.
Wieso schreibst du nicht einfach, eine globale variabel in dein Javascript, in der steht ob ein Panel bereits offen ist und welches es ist und machst eine Abfrage davor, dass er erst schauen soll ob ein Panel offen ist und wenn ja, dass er dieses erst schliessen soll, um erst danach das neue zu öffnen.
So hatte ich es zumindest damals realisiert.
MFG