Autor Zpráva
TomasRe
Profil
Dobrý den,

potřeboval bych poradit s propojením dvou scriptů:

1)

function Kontrola(f) {
var vysledek = true;
var strerr = "";
if (f.prvni.value=="") strerr += "Prvni\n";
if (f.druhy.value=="") strerr += "Druhy\n";
if ("" != strerr) {
	vysledek = false;
	alert("Please fill this fields:\n\n" + strerr);
	}
return vysledek;
}


ověří, jsou-li obě políčka vyplněna

2)

function jdi(){
a=document.formular.prvni.options[document.formular.prvni.selectedIndex].value;
a+=document.formular.druhy.options[document.formular.druhy.selectedIndex].value;
window.location=a;
return false;}


2 políčka formuláře - vytvoří z nich podle proměných nové URL, kam stránku nasměřuje

Tyto 2 funkce jsem zkoušel propojit, ale vždy funguje jen jedno a to druhé potlačí. Můžete mi prosím poradit?
_es
Profil
TomasRe:
Tyto 2 funkce jsem zkoušel propojit, ale vždy funguje jen jedno a to druhé potlačí.
To znamená presne čo, ako funguje či nefunguje, ako tie funkcie voláš?
Ak načítaš do okna inú stránku (funkcia jdi), tak samozrejme v novej stránke staré skripty (funkcia Kontrola) nie sú.
TomasRe
Profil
_es:
Funkci kontrola jsem volal pomocí onsubmit na začátku formuláře, jdi pak na konci pomocí onclick - fungovala pouze funkce jdi
_es
Profil
TomasRe:
Nedostatočné informácie, nechce sa mi špekulovať nad podivnými vyjadreniami - „na konci pomocí onclick“ - to je čo, ako?
Dodaj dosť informácií, alebo „živú“ ukážku.
TomasRe
Profil
<form action="" name="formular" onsubmit="return kontrola(this);">
<table class="search_02">
<tr>
<td>Prvni policko</td>
<td><select name="prvni" class="search_vyber"> 
<option value=""></option>
<option value="Hodnota a">text a</option>
<option value="Hodnota b">text b</option>
</select></td>
</tr>
<tr>
<td>Druhe policko</td><td></td>
<td><select name="druhy" class="search_vyber"> 
<option value=""></option>
<option value="hodnota1">text1</option>
<option value="hodnota2">text2</option>
<option value="hodnota3">text3</option>
</select></td>
</tr>
</table>
<br />
<div class="findbutt"><input type="submit" value="<?php echo $search_4;?>" class="obrbutt" onclick="return jdi();"></input></div></form>
_es
Profil
TomasRe:
Veď ti stačí len jedna udalosť - onsubmit.
Na čo ti je ešte aj udalosť onclick? Nepotrebuješ ju. Navyše sa to môže v rôznych prehliadačoch správať odlišne.
TomasRe
Profil
To jsem zkoušel taky vložit ten script jako jeden, asi by to bylo i ideální, ale to pak nefungoval ani jeden. Asi jsem je nějak špatně spojil.
_es
Profil
TomasRe:
Zrejme ide o nejaké pokračovanie iného vlákna, tipujem preto riešenie:
onsubmit="if(Kontrola(this))jdi();return false"
TomasRe
Profil
_es:
Krásně jednoduché a funguje bez chyby. Strašně moc děkuji.

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