Autor Zpráva
Pavka
Profil
Ahoj,
mám formulář ve kterém se při změně výběru selectu formulář odešle pomocí metody submit(). Když si to prohlížím v Opeře, tak to tuto metodu ignoruje, má tady metoda fungovat i v Opeře nebo to musím ošetřit přes location? Mám Operu 9.0, neměnil jsem standartní nastavení.
Leo
Profil
Kousek kodu by nebyl? Leo
Pavka
Profil
Javascriptová funkce, která to zařizuje:

function module_purchaseserver_onchange_game(select)
{
document.getElementById('module_purchaseserver_game_hidden').value = select.value;
document.getElementById('module_purchaseserver_form').submit();
}

Osekaný formulář:

<form action="index.php?module=%module_id%&amp;do=2" method="post" id="module_purchaseserver_form">
<select name="game" onChange="module_purchaseserver_onchange_game(this);"><option value="0">...</option>...</select>
<input type="hidden" id="module_purchaseserver_game_hidden" name="game_hidden" value="" />
</form>
Pavka
Profil
Tak se mi to podařilo vyřešit...původně jsem tam měl ještě tlač. typu submit uvnitř formuláře a pak mi tato metoda nefungovala ani v FF a IE. Nefungovala ani u tybu button, tak jsem to dal mimo formulář a prostě jsem to odesílal přes událost onClick a následně submit(). Ale Opeře to nestačilo, ale po začlenění tohoto odesílacího tlačítka do jiného formuláře to už funguje i tam. Díky.
nothrem
Profil
Problém je v tom, že opera provádí události onfocus a onclick jinak (jindy) a pak s tím jsou problémy.

btw nezkoušel jsem to jinde než v opeře, ale funguje mi i odesílání
{
module_purchaseserver_form.submit();
}
peta
Profil *
Pavka
"po začlenění tohoto odesílacího tlačítka"

Ano, mam ten pocit, ze kteremusi prohlizeci to velice vadilo, kdyz nemel submit tlacitko.

Nicmene standartni odesilani vypada tatko:
<form action="www.php" onsubmit="return validate(this);">
<input type="submit">
</form>

<script>
function validate()
{
if (1) {return true;}
else {return false;}
}

Pokud to delas nejak jinak, treba onclick, ocekavej problemy.
Ale treba submit je i tlacitko input type="image"
Toto téma je uzamčeno. Odpověď nelze zaslat.