Ik heb een probleem met mijn show/hide function door het gebruik van onclick.
Opzich is dit waarschijnlijk de beste manier om dingen op te lossen, maar ik wil graag dat de instellingen van het formulier behouden worden als er een fout gemaakt wordt. Zodat niet alles opnieuw ingevuld moet worden.
Nou heb je bijvoorbeeld op een checkbox geklikt en daarna is er een selectmenu erachter zichtbaar geworden (hide -> show). Nou moet daar in dat selectmenu ook nog wat geselecteerd worden. Allemaal leuk en aardig, en de herinnerfunctie werkt ook.
Maar nou zit ik met een probleem. Mocht de persoon toch de checkbox weer uit willen schakelen, dan blijft na de uitschakeling de select staan. De persoon denkt; huh? En checkt de checkbox weer. Nu verdwijnt het select vanwege onclick. Nu blijven ze tegengesteld werken. gechecked -> hide, ongecheckt -> show.
Zou iemand mij kunnen helpen om dit probleem te voorkomen?
mijn js en php code:
[JS]function showHide(id){
el = document.getElementById(id);
el.style.display = (el.style.display != 'block')? 'block' : 'none';
}[/JS]
alvast bedankt! mvg Rowan
Opzich is dit waarschijnlijk de beste manier om dingen op te lossen, maar ik wil graag dat de instellingen van het formulier behouden worden als er een fout gemaakt wordt. Zodat niet alles opnieuw ingevuld moet worden.
Nou heb je bijvoorbeeld op een checkbox geklikt en daarna is er een selectmenu erachter zichtbaar geworden (hide -> show). Nou moet daar in dat selectmenu ook nog wat geselecteerd worden. Allemaal leuk en aardig, en de herinnerfunctie werkt ook.
Maar nou zit ik met een probleem. Mocht de persoon toch de checkbox weer uit willen schakelen, dan blijft na de uitschakeling de select staan. De persoon denkt; huh? En checkt de checkbox weer. Nu verdwijnt het select vanwege onclick. Nu blijven ze tegengesteld werken. gechecked -> hide, ongecheckt -> show.
Zou iemand mij kunnen helpen om dit probleem te voorkomen?
mijn js en php code:
[JS]function showHide(id){
el = document.getElementById(id);
el.style.display = (el.style.display != 'block')? 'block' : 'none';
}[/JS]
PHP:
<tr>
<td colspan="2"><input type="checkbox" name="check1" value="1" <?php if($_POST['check1'] == '1'){ echo "checked";} ?> onclick="showHide('check2')"> check1</td>
<td align="right" style="padding-right:10px;">
<select name="check2" size="1" id="check2" <?php if($_POST['check1'] == '1'){}else{echo'style="display:none"';}?>>
<option value="">Kies optie</option>
<option value="optie1" <?php if ($_POST['check2'] == 'optie1'){echo " selected";} ?>>optie 1</option>
<option value="optie2" <?php if ($_POST['check2'] == 'optie2'){echo " selected";} ?>>optie 2</option>
</select>
</td>
<td><?php echo $fout_check; ?></td>
</tr>
alvast bedankt! mvg Rowan