[ Príspevkov: 3 ] 
AutorSpráva
Offline

Užívateľ
Užívateľ
Obrázok užívateľa

Registrovaný: 30.05.09
Prihlásený: 14.02.14
Príspevky: 106
Témy: 52 | 52
NapísalOffline : 12.02.2014 14:41 | Vykonanie submit() po preventDefault

Zdravím, mám problém s odoslaním formulára po zavolaní funkcie preventDefault(). Niekde robím určite chybu. Mám klasický formulár, po kliknutí na submit button chcem aby sa zobrazilo okno s informácia a po 10 sekundách sa odoslal formulár. Mám to napísané takto:

HTML
Kód:
<form method="post" id="create-budget">
     ...
     <input type="submit" value="Vypočítať" name="make-budget">
</form>


Jquery
Kód:
// zobrazenie vyskakovacie okna
var showPopup = function() {
  $('#pop-up').fadeIn('slow);
  $('#container').css('opacity','0.6');
  return true;
}

// skrytie vyskakovacieho okna
var hidePopup = function() {
  $('#pop-up').fadeOut('slow);
  $('#container').css('opacity','1');
  return true;
}

// po kliknutí na submit button
$('#create-budget').submit(function(e) {
  e.preventDefault();
 
  // zobrazit okno
  showPopup();
  // po 10 sekundach zatvorit
  setTimeout(function() { hidePopup(); }, 10000);

  // odoslat formulár
  $(this).submit();
});


Predpokladám, že pri volaní $(this).submit() sa zasa dostanem na začiatok a znovu odoslanie formulára zablokuje funkcia preventDefault(). Vyskúšal som pred posledný riadok napísať ešte $(this).unbind('submit') ale formulár sa taktiez neodoslal. Ďakujem za každú radu.


Offline

Užívateľ
Užívateľ
Obrázok užívateľa

Registrovaný: 06.02.14
Prihlásený: 19.01.18
Príspevky: 443
Témy: 9 | 9
NapísalOffline : 12.02.2014 16:03 | Vykonanie submit() po preventDefault

skus takto. ten submit som vlozil ako callback, aby sa volal az vo funkcii hidePopup. vyskusaj, pripadne skus tam vlozit nejaky console.log.

Kód:
// zobrazenie vyskakovacie okna
var showPopup = function() {
  $('#pop-up').fadeIn('slow');
  $('#container').css('opacity','0.6');
  return true;
}

// skrytie vyskakovacieho okna
var hidePopup = function(cb) { // doplneny atribut - funkcia submitu
  $('#pop-up').fadeOut('slow', function() {
   $('#container').css('opacity','1'); // zmena opacity az po vykonani fadeOut
   cb();   // zavolanie submitu formulara
  return true;
  });

}

// po kliknutí na submit button
$('#create-budget').submit(function(e) {
 var $formular = $(this);
  e.preventDefault();
 
  // zobrazit okno
  showPopup();
  // po 10 sekundach zatvorit
  setTimeout(function() {
      hidePopup(function() {
          $formular.submit();  // posielam submit formularu, ktory je zavolany ako callback
      });
   }, 10000);

  // odoslat formulár
 
});



oprava: som chcel zvyraznit zmeny, ale ako je napisane nizsie, neda sa, tak hladaj :P


Naposledy upravil hatto13 dňa 12.02.2014 18:01, celkovo upravené 1

Offline

Skúsený užívateľ
Skúsený užívateľ
Vykonanie submit() po preventDefault

Registrovaný: 24.01.08
Prihlásený: 13.09.17
Príspevky: 14572
Témy: 66 | 66
Bydlisko: Žilina
NapísalOffline : 12.02.2014 17:30 | Vykonanie submit() po preventDefault

hatto, odstráň si ten bbcode z kódu, ako vidíš, pri code to nefunguje


_________________
C#, PHP, ...
 [ Príspevkov: 3 ] 


Vykonanie submit() po preventDefault



Podobné témy

 Témy  Odpovede  Zobrazenia  Posledný príspevok 
V tomto fóre nie sú ďalšie neprečítané témy.

Shell, vykonanie pre 2 podmienky

v Ostatné

3

466

02.12.2017 23:40

void

V tomto fóre nie sú ďalšie neprečítané témy.

Zlyhalo vykonanie 'grub-install (hd0)'

v Operačné systémy Unix a Linux

6

1189

08.08.2008 20:55

cassyopea

V tomto fóre nie sú ďalšie neprečítané témy.

Vykonanie akcií po skončení http spojenia

v PHP, ASP

6

616

17.08.2009 19:37

rooobertek

V tomto fóre nie sú ďalšie neprečítané témy.

opatovne vykonanie php pri stlaceni tlacidla spat

v PHP, ASP

4

551

29.12.2012 18:50

boyindoor

V tomto fóre nie sú ďalšie neprečítané témy.

Chybové hlásenie ,,nedostatok ukladacieho priestoru pre vykonanie príkazu"

v Operačné systémy Microsoft

9

735

02.05.2020 22:25

tatko Tom

V tomto fóre nie sú ďalšie neprečítané témy.

Submit disabled

v JavaScript, VBScript, Ajax

3

556

08.05.2011 23:12

max-m

V tomto fóre nie sú ďalšie neprečítané témy.

jQuery submit();

v JavaScript, VBScript, Ajax

2

654

29.05.2010 18:46

Draex

V tomto fóre nie sú ďalšie neprečítané témy.

Submit textarea?

v PHP, ASP

1

547

15.09.2009 17:59

Ded'leg

V tomto fóre nie sú ďalšie neprečítané témy.

Submit tlačítko

v PHP, ASP

13

1163

20.11.2009 13:31

KViki

V tomto fóre nie sú ďalšie neprečítané témy.

2 submit-buttony

v PHP, ASP

8

777

09.08.2009 0:05

pogo

V tomto fóre nie sú ďalšie neprečítané témy.

Submit a PHP

v PHP, ASP

3

764

21.05.2011 13:06

stenley

V tomto fóre nie sú ďalšie neprečítané témy.

nahratie obrazku na submit

v HTML, XHTML, XML, CSS

4

657

16.11.2007 12:18

stenley

V tomto fóre nie sú ďalšie neprečítané témy.

submit form text+file

v JavaScript, VBScript, Ajax

6

768

31.01.2011 10:17

DeeJay3

V tomto fóre nie sú ďalšie neprečítané témy.

Input submit vz image

v PHP, ASP

18

1079

10.07.2010 11:16

php30

V tomto fóre nie sú ďalšie neprečítané témy.

input type: submit vs. image

v HTML, XHTML, XML, CSS

5

516

17.03.2010 17:59

shaggy

V tomto fóre nie sú ďalšie neprečítané témy.

this.form.submit() a mod_rewrite

v JavaScript, VBScript, Ajax

4

950

06.03.2009 15:57

lio



© 2005 - 2024 PCforum, edited by JanoF