Autor Zpráva
Sylar
Profil
Zdravím,
mám formulář, který má čtyři potvrzovací submity
- uložení a odchod ze stránky
- uložení a setrvání na stránce
- neuložení a odchod ze stránky
- neuložení a setrvání na stránce
U toho druhého (uložení a pokračování) bych chtěl udělat ajaxové uložení, ale nevím jak přes javascript zachytit, že byl formulář odeslán právě tímto submitem.
<script type="text/javascript">
function saveAndContinue(form) {
// jak mám zde zachytit jeslti byl stiknut právě submit name "submit_cont" ?
}
</script>
<form id="edit" onsubmit="saveAndContinue(this)"; action="cesta/ke/scriptu.php" method="post" accept-charset="utf-8" enctype="multipart/form-data">
<input type="text" name="text" value="" />
<input class="submit" type="submit" id="submit" name="submit" value="Uložit" />
      <input class="submit" type="submit" id="submit_cont" name="submit_cont" value="Uložit a pokračovat" />
      <input class="submit" type="submit" id="submit_no_save" name="submit_no_save" value="Storno" />
      <input class="submit" type="submit" id="submit_puv_hod" name="submit_puv_hod" value="Původní hodnoty" />
</form>
_es
Profil
Sylar:
U toho druhého (uložení a pokračování) bych chtěl udělat ajaxové uložení,
Nepotrebuješ nejaké „ajaxové uloženie“, stačí formulár nasmerovať do iframe na stránke - atribút target sa dá zmeniť aj zo skriptu.
Mira
Profil *
if(getElementById('submit_cont')==true) ....
Sylar
Profil
_es:
myslíš, mít někde pod formulářem
<iframe name="iframe_save" id="iframe_save" src="stejna-strank-kde-zpracovavam-normalne-formular.php" width="0" height="0"></iframe>

a u odkazu mít něco jako
<input id="submit_cont" target="iframe_save" value="Uložit a pokračovat" />
? nebo to přesměrování by mělo probíhat až v té fci, která je volána při akci onSubmit při odeslání formuláře? pokud ano, tak stejně musím zachytit pouze ten jeden submit, ty ostatní pustil dál, aby se mi nepřesměrovaly všechny. moc netuším jak přesně to tvé řešení udělat, můžeš to trošku rozvést?

Mira:
když zkusím
saveAndContinue(form) {
if (getElementById('submit_cont') == true) alert("jojo"); // tohle mi nic nevyhodí :(
if (document.getElementById('submit_cont') == true) alert("jojo"); // tohle taky ne :(
if (form.submit_cont == true) alert("jojo"); // tohle taky ne :(
}

tak mi to nic nevyhodí ... OPRAVDU se to má kontrolovat na hodnotu "true"? nebo OPRAVDU dělám něco špatně já?
_es
Profil
Sylar:
a u odkazu mít něco jako
Nie, target je atribút formulára, z elementov formulára z ovládačov udalostí je dostupný napríklad cez this.form.target.
Alebo spravíš pre každé tlačítko vlastný formulár s vlastným atribútom target, ktorý potom netreba meniť cez skript.

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: