Autor Zpráva
shooty
Profil *
Potreboval bych abych zaklikl obrazek a form by se aktivovala.
Takhle vypada kod:

<form name="prihlaska" action="raceon.php" method="post">
<input type="hidden" name="season_id" value="1">
<a class="squarebutton" onclick="this.form.submit();return false" href="#"><span>Podat přihlášku</span></a>
</form>


Ale bohužel tento kód nefunguje :(
Radek9
Profil
shooty:
Zkus dát pryč to return false.
Kcko
Profil
aby to fungovalo musel by to byt formularovy prvek a ne odkaz.

Jinak zkus dat formulari ID a pak pres document.getElementById("id").submit();
shooty
Profil *
Diky moc Kcko , jede to.
Camo
Profil
No neni chyba v tom, že this v lastne už označuje daný formulár a teda by to malo byť:
onclick="this.submit();return false"
Chamurappi
Profil
Reaguji na shootyho:
Proč nepoužiješ normální odesílací tlačítko? Nebo, chceš-li odesílat obrázkem, <input type="image">?


Reaguji na Kcka:
Jinak zkus dat formulari ID a pak pres document.getElementById("id").submit();
Také by šlo document.prihlaska.submit().


Reaguji na Cama:
Ne, this je v onclicku na odkazu ten odkaz, nikoliv formulář.
Camo
Profil
Chamurappi:
Toto bude naozaj fungovať: document.prihlaska.submit()?
A s každým elementom?
Chamurappi
Profil
Reaguji na Cama:
Bude to fungovat v dokumentu, kde je <form name="prihlaska">.
esonyx
Profil *
Ahoj, zdravím všechny. Řeším podobný roblém. Odesílám fomulář kliknutím na obrázek, který se změní po najetí myši. Vygooglil jsem si kontrolu formuláře javascriptem (kterou jěště chápu), ale ta kontrola funguje pouze když kliknu na klasické tlačítko. Můžete mi prosím někdo poradit, jak na odeslání formuláře po kliknutí na ten obrázek? Javascript vážně není moje silná stránka. Předem moc děkuji.

<script language="JavaScript">
<!--
function Kontrola(f) {
var vysledek = true;
var strerr = "";
if (f.jmeno.value=="") strerr += "Jméno\n";
if (f.prijmeni.value=="") strerr += "Příjmení\n";
if ("" != strerr) {
    vysledek = false;
    alert("Níže uvedená pole nejsou vyplněna:\n\n" + strerr);
    }
return vysledek;
}
//-->


</script>

<form id="fokus" name="pokus" action="pokusjavascript2.php" method="post" onSubmit="return Kontrola(this);">

<b>Jméno :</b><br /><input type="text" name="jmeno" size="30"><br />
<b>Příjmení</b><br /><input type="text" name="prijmeni" size="30"><br />

<input type="submit" value="Odeslat"><br />

<a href="javascript: document.getElementById('fokus').submit();" title="Submit the Form"><img src="pokracovata.jpg" onmouseover="this.src='pokracovatb.jpg';" onmouseout="this.src='pokracovata.jpg';" border="0"></a><br />

<a href="javascript: document.pokus.submit();" title="Submit the Form"><img src="pokracovata.jpg" onmouseover="this.src='pokracovatb.jpg';" onmouseout="this.src='pokracovata.jpg';" border="0"></a>

</form>
<br />

<?php
echo "Jméno: .$jmeno <br>";
echo "Příjmení: .$prijmeni <br>";
?>


Odkaz zde: Odkaz
Shulík
Profil
Při desílání formuláře javascriptem se neprovede událost onsubmit u tagu <form>.
to trochu upravit:
<a href="javascript:var form= document.getElementById('fokus');if(Kontrola(form)){form.submit();}" title="Submit the Form"><img src="pokracovata.jpg" onmouseover="this.src='pokracovatb.jpg';" onmouseout="this.src='pokracovata.jpg';" border="0"></a><br />


U toho dalšího odkazu, který odesílá formulář, to musíš udělat taky tak.
Chamurappi
Profil
Reaguji na esonyxe:
Použij <input type="image">. Absolutně nechápu, proč se ty i shooty snažíte odesílat odkazem. (A proč jsem jediný z odpovídajících, kdo se nad tím pozastavuje.)
esonyx
Profil *
Chamurappi:

Ano input type=image jsem použil, ale neměnil se mi obrázek, proto jsem to řešil přes odkaz. Ale asi jsem tam měl chybu a už funguje.

<input type="image" src="pokracovata.jpg" value="Click here" onmouseover="this.src='pokracovatb.jpg';" onmouseout="this.src='pokracovata.jpg';" border="0" />


Děkuji všem za pomoc =o)
master83
Profil *
Chamurappi: možná proto že v IE6 funguje hover pouze na Ačka (ale to je v tomhle případě asi jedno)

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: