kozioł
12.01.2009, 09:54:45
Witam ,
mam taki problem , mam formularz a w nim pole kombi gdzie sa różne wartości do wybrania z listy ,
chciał bym aby po wybraniu wartościu "umów" z tej listy , pojawiło mi się dodatkowe pole w formularzu daty i godziny ,
jak to zrobić , skrypt kalendarza już mam.Z polem do godziny nie mogę sobie poradzić , ale ten problem jakoś rozwiązę.
będę wdzięczny za pomoc
pozdrawiam
AdvMDev
12.01.2009, 14:24:46
Javascript. Dodajesz normalnie te dofatkowe pola, obejmujesz je divem. W css dla diva ustawiasz display: none. Potem znów Javascript - ustawiasz funkcję, gdy user zmieni wartość pola kombi - jeśli da "ustaw", to funkcja pokazuje tego diva (zmienia display w css).
Pilsener
12.01.2009, 14:26:23
Musisz pobrać wartość z selecta np. tak:
<?php
obj1=document.getElementById('pole');
if(document.getElementById('selekt').value == ''cos){
obj1.className =
//i tu ustawiasz, aby zmieniło styl/klasę/typ tego pola z display:none czy type=hidden na zwykłe.
?>
//nie wiem jakiego bbcode użyć do JS. Na forum było kilka gotowych przykładów, poszukasz to znajdziesz.
kozioł
19.01.2009, 11:08:24
już sobie poradziłem z tum problemem , kalendarz mam w osobnym pliku ,
a to skrypt który po wybraniu slecta pokazuje dodatkowe pola gdzie jedno jest powiązane z kalendarzem i po kliknięciu w pole pojawia sie kalendarz i wstawia do tego plola wartość z kalendarza.
nie wiem jak zrobić aby te dodtakowe pola znikały jak wybiorę inną wartośc niż "umow" z selecta.
dziękuję za rady
<meta http-equiv="content-type" content="text/html; charset=iso-8859-2"> <script language="JavaScript"> function pokaz( wybrano )
{
if ( wybrano == 'umow' )
{
dodatkowe_pola.innerHTML = '
<input type="text" name="data" onclick="showKal(this)" >';
dodatkowe_pola2.innerHTML = '
<input type="text" name="godzina" >';
}
}
<body onLoad="document.onmousemove = mysz;">
<select id="wybor" name="wybor" onChange="pokaz( this.value )">
<option value="nic" selected>--- wybierz z listy ---
</option>
<div id="dodatkowe_pola"></div> <div id="dodatkowe_pola2"></div>