Autor Zpráva
BuGeR
Profil
Dobrý večer všem:).
Prosím nevíte někdo o nějakém scriptu, který když vyberu nějakou hodnotu ze selectu tak vyskočí nějaký text, bez toho aniž bych dal submit.
Mam na mysli to, že mam <select><option value='1'>1</option>(atd..)</select> tak že když vyberu třeba 1 tak nad selectem se po té zobrazí text "Zvolili jste 1ku".
Děkuji:). S pozdravem BuGeR.

// Našel jsem <select onchange='vypis()'>
Tohle sice funguje, ale jakoby můžu udělat jen 1, chtěl bych že když vyberu třeba option value='2' tak aby to bylo např. vypis(2), teda pokud vás nenapadá jinačí řešení :)
Beavis
Profil
BuGeR:
<select onchange='vypis()'>
A do fce vypis() si přidáš text - třeba "Zvolili jste číslo:", +value z option.
Herm
Profil
<div id="change"></div>
<select onchange="document.getElementById('change').innerHTML =  'Vybráli jste číslo ' + this.options[this.selectedIndex].value;">
<option>1</option>
<option>2</option>
<option>3</option>
</select>
BuGeR
Profil
Děkuji moc. Trochu jsem si ten script upravil :
<script>
function vypis(id) {
if(id==1) {
document.write("jedna");
} 
else if(id==2) {
document.write("dva");
}
}
</script>
<select onchange="vypis(this.options[this.selectedIndex].value);">
<option>1</option>
<option>2</option>
</select>


Ale nastanou 2 problémy - Select zmizí a naskočí "jedna" (popř. dva)..
a navíc stránka se jakoby pořád načíta..
Mohli by jste mi pomoct?:)
Herm
Profil
BuGeR:
document.write nemužeš použit, to nepracuje dynamicky (myslim).. musíš použít innerHTML, takže si musíš někde vytvořit prázdné tagy

<span id="change"></span> nebo <div id="change"></div>


a potom tomu dynamicky nahodit to číslo

document.getElementById("change").innerHTML = "tvoje číslo";
BuGeR
Profil
Už jsem to vyřešil, děkuji :)
<script type='text/javascript'>
function vyskoc(value) {
for(var i=1; i<4; i++) {
var element;
obj=document.getElementById('id' + i);
obj.style.display="none";
}
if(value != '-')
{
obj=document.getElementById('id' + value);
obj.style.display="block";
}}

</script>
<div id="id1" style="display: none;">1</div>
<div id="id2" style="display: none;">2</div>
<div id="id3" style="display: none;">3</div>
<form action="" method="post">

<select  name="typ" onChange="vyskoc(this.form.typ.options[this.form.typ.selectedIndex].value);">
<option value='-'>-</option>
<option value='1'>1</option>
<option value='2'>2</option>
<option value='3'>3</option>
</select>
Herm
Profil
BuGeR:
jen nechapu proč to maš tak složitě udělané, když stačil jeden DIV a tam měnit 1,2,3

už jsem ti to psal tak prve

<script type='text/javascript'>
function vyskoc(value) {
document.getElementById("id1").innerHTML = value;
}

</script>
<div id="id1"></div>

<select  name="typ" onChange="vyskoc(this.form.typ.options[this.form.typ.selectedIndex].value);">
<option value='-'>-</option>
<option value='1'>1</option>
<option value='2'>2</option>
<option value='3'>3</option>
</select>

Vaše odpověď

Mohlo by se hodit

Neumíte-li správně určit příčinu chyby, vkládejte odkazy na živé ukázky.
Užíváte-li nějakou cizí knihovnu, ukažte odpovídajícím, kde jste ji vzali.

Užitečné odkazy:

Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm:

0