Hallo,
Ik zou een selectbox willen maken. Maar wanneer
de gebruiker in de "selectlijst" niets kan selecteren, moet hij manueel iets kunnen ingeven.
Weet iemand hoe ik deze mogelijkheid kan aanbieden?

<select name="hobbie" id="hobbie">
<option value="">selecteer</option>
<option value="sporten">sporten</option>
<option value="multiemedia">multiemedia</option>
<option value="slapen">slapen</option>
<option value="camperen">camperen</option>
<select name="hobbie" id="hobbie">
<option value="">selecteer</option>
<option value="sporten">sporten</option>
<option value="multiemedia">multiemedia</option>
<option value="slapen">slapen</option>
<option value="camperen">camperen</option>
<option value="andere">andere</option>
</select>
<input type="text" name="hobbie_input" id="hobbie">

bij je verwerkings php bestand:
<? if($_POST['hobbie'] == "andere" AND $_POST['hobbie_input'] != ""){
$hobbie = $_POST['hobbie_input'];
}else{
$hobbie = $_POST['hobbie'];
} ?>
daarna de rest van je verwerking
En met een stukje Javascript kun je er voor zorgen dat het textveld 'hobbie' alleen zichtbaar wordt wanneer je in de selectbox hebt gekozen voor 'andere'.
idd, zoals sebastiaan al aantoonde

combinatie van beide is beste oplossing
Wat is het javascript? Ben niet zo sterk in javascriptjes...
Alvast bedankt ...
Hipska schreef op 04.01.2006 21:13
idd, zoals sebastiaan al aantoonde
dus kijk eenss naar sebastiaan zijn post
Hallo Sebastiaan,
Jouw oplossing past het best bij mijn noden, alleen, werkt het bij mij niet. Heb die code gecopieerd en opgeslaan als html bestand, maar wanneer ik die derde mogelijkheid aanklik, komt er geen textbox tevoorschijn. Doe ik iets verkeerd?
Nee je doet niks verkeerd, maar Jan maakt gebruikt van een script dat hij 'geinclude' heeft. Voeg dit stukje code boven je JS code toe:

<?

// JavaScript Document
// met dank aan Peter Paul Koch - http://www.quirksmode.org


function getObj (name)
{
if (document.getElementById) {
this.obj = document.getElementById(name);
this.style = document.getElementById(name).style;
}
else if (document.all) {
this.obj = document.all[name];
this.style = document.all[name].style;
}
else if (document.layers) {
this.obj = document.layers[name];
this.style = document.layers[name];
}
}

?>

(php tags niet mee kopieren)

Reageren