html pulldown menu met invoerveld

Pagina: 1
Acties:

Acties:
  • 0 Henk 'm!

  • wigwam
  • Registratie: Oktober 2001
  • Laatst online: 05-06 16:37
Beste tweakers,

Ik gebruik op mijn interne website een pulldown menu die een aantal waarden uit mijn database weergeeft in het betreffende menu. Het menu geeft alleen de waarde weer die in de database tabel aanwezig zijn.

Nu kom ik er achter dat het regelmatig voorkomt dat een waarde nog niet aanwezig is in mijn pulldown menu ofwel de database tabel.

Nu lukt het ondertussen wel om een extra invoer vak (onder mijn pulldown menu) weer te geven op mijn site waar ik eventueel de onbrekende waarde kan invullen: <td><input type="text" name="Geheugen" size="77" /></td> enzovoorts...

Maar wat ik eigenlijk wil is dat als ik het invoerveld aanklik/selecteer mijn pulldownmenu geen waarde meer weergeeft op mijn site (dus ook geen waarde doorgeeft aan mijn volgende webpagina)

is het bijvoorbeeld mogelijk om mijn optgroup label wit/leeg weer te geven na het aanklikken van het invoerveld?. dus echo "<optgroup label=\"\">"; ipv echo "<optgroup label=\"Selecteer Geheugen\">";

code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
<tr>
<td>Geheugen</td>
<td>
<select name="Geheugen" style="width: 500px;">
<?php
include('../connect.inc.php');

$sql = "SELECT DISTINCT Geheugen FROM Componenten";
$rs = mysql_query($sql);

echo "<optgroup label=\"Selecteer Geheugen\">";

while($row=mysql_fetch_array($rs)){
    echo "<option name=selected value=\"".$row['Geheugen']."\">".$row['Geheugen']."\n";
}
?>
</select>
</td>
</tr>

[ Voor 4% gewijzigd door wigwam op 27-09-2009 12:22 ]


Acties:
  • 0 Henk 'm!

  • MueR
  • Registratie: Januari 2004
  • Laatst online: 20:57

MueR

Admin Tweakers Discord

is niet lief

Dan zal je een lege option moeten maken, bijvoorbeeld met waarde -1. Dat kan je in je code weer afvangen en dan automagisch je tekstveld inlezen.

Anyone who gets in between me and my morning coffee should be insecure.


Acties:
  • 0 Henk 'm!

  • TeeDee
  • Registratie: Februari 2001
  • Laatst online: 20:25

TeeDee

CQB 241

Je zou ook gebruik kunnen maken van een Combobox.

Heart..pumps blood.Has nothing to do with emotion! Bored


Acties:
  • 0 Henk 'm!

  • Raynman
  • Registratie: Augustus 2004
  • Laatst online: 23:59
Je kunt natuurlijk ook gewoon eerst kijken of er iets ingevuld is in het tekstveld en alleen als dat leeg is gaan kijken naar de geselecteerde waarde uit de lijst (hoef je clientside niet moeilijk te doen).
Daarbij kun je dan eventueel ook nog een stukje javascript koppelen aan het tekstveld zodat automatisch die lege option wordt geselecteerd als er iets ingetypt wordt, of de select op disabled zet (maar dan moet je het ook makkelijk maken om toch weer een optie uit de lijst te kiezen (anders kun je JS beter weglaten), dus knopje om tekstveld te wissen waarna "disabled" verdwijnt/tekstveld wissen als men weer een niet lege optie aanklikt/...).

[ Voor 3% gewijzigd door Raynman op 27-09-2009 12:33 ]


Acties:
  • 0 Henk 'm!

  • MueR
  • Registratie: Januari 2004
  • Laatst online: 20:57

MueR

Admin Tweakers Discord

is niet lief

TeeDee schreef op zondag 27 september 2009 @ 12:29:
Je zou ook gebruik kunnen maken van een Combobox.
Dan ben je afhankelijk van javascript, niet echt ideaal ;)

Anyone who gets in between me and my morning coffee should be insecure.


Acties:
  • 0 Henk 'm!

  • TeeDee
  • Registratie: Februari 2001
  • Laatst online: 20:25

TeeDee

CQB 241

MueR schreef op zondag 27 september 2009 @ 17:29:
[...]

Dan ben je afhankelijk van javascript, niet echt ideaal ;)
Je mag imo best verwachten dat JS beschikbaar is. Zo niet, dan zijn er vast wel manieren om het netjes te laten degraden tot een oplossing die richting jouw idee gaat.

2 invoervelden om 1 categorie aan te maken of te selecteren vind ik nu eenmaal niet zo netjes.

Heart..pumps blood.Has nothing to do with emotion! Bored


Acties:
  • 0 Henk 'm!

  • wigwam
  • Registratie: Oktober 2001
  • Laatst online: 05-06 16:37
Sorry voor mijn laten reactie.

Ik heb ondertussen een goed voorbeeld gevonden van een html combobox --> http://www.cs.tut.fi/~jkorpela/forms/combocode.html
Nog bedankt voor de tip!

Het voorbeeld heb ik ondertussen aangepast aan mijn eigen webpagina. Alleen ik krijg het niet voor elkaar om de waarde door te geven aan mijn verwerkpagina. Als ik de waarde apart door geef lukt het wel (bijvoorbeeld via: name="Moederbordpulldown" en name="Moederbordinvoer").

Maar wat ik wil is dat de pagina 1 waarde doorgeeft. Of de waarde van het pulldownmenu of de waarde van het invoerveld? Is er iemand die ziet wat ik verkeerd doe?

naam van mijn form <form action="Add_computer_list.php" method="POST" name="demoform">

code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
<tr>
<td>Geheugen</td>
<td>
<select name="Geheugen" style="width: 500px;">
<?php
include('../connect.inc.php');

$sql = "SELECT DISTINCT Geheugen FROM Componenten";
$rs = mysql_query($sql);

echo "<optgroup label=\"Selecteer Geheugen\">";

while($row=mysql_fetch_array($rs)){
    echo "<option name=selected value=\"".$row['Geheugen']."\">".$row['Geheugen']."\n";
}
?>
<option value="Geheugen">other, please specify:</option>
</select>
<noscript>
<input type="text" name="Geheugen"/>
</noscript>

<script type="text/javascript" language="JavaScript"><!--
disa = ' disabled';
if(last_choice(document.demoform.menu)) disa = '';
document.write('<input type="text" name="choicetext"'+disa+
' onfocus="check_choice()">');
if(disa && document.styleSheets)
   document.demoform.choicetext.style.visibility  = 'hidden';
//--></script>
</td>
</tr>
Pagina: 1