Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [JavaScript]Problem z jquery impromptu (potwierdzenie wykonania formularza))
ublizzard
post 5.01.2012, 12:14:15
Post #1





Grupa: Zarejestrowani
Postów: 40
Pomógł: 1
Dołączył: 17.12.2011
Skąd: Lublin

Ostrzeżenie: (0%)
-----


Chciałbym aby po wciśnięciu buttona pojawiło się pytanie, czy na pewno chcę wysłać formularz.
Znalazłem bibliotekę jquery impromptu, jest bardzo fajna, ale gdy umieszczę przycisk w formularzu po jego naciśnięciu pojawia się okienko i szybko znika (około 1s)zanim coś wybiorę.
Tak wygląda kod:
  1. <head>
  2. <script type="text/javascript" src="scripts/jquery-1.7.1.js"></script>
  3. <script type="text/javascript" src="scripts/jquery-impromptu.3.2.js"></script>
  4. <?
  5. echo '<link rel="Stylesheet" type="text/css" href="http://'.$_SERVER['SERVER_NAME'].'/test/style2.css" />';
  6. echo '<link rel="Stylesheet" type="text/css" href="http://'.$_SERVER['SERVER_NAME'].'/test/screen.css" />';
  7. ?>
  8. </head>
  9. <body>
  10. <form action="index.php?tresc=rejestracja" method="post">
  11. <input type="submit" onclick="$.prompt('Example 2',{ buttons: { Ok: true, Cancel: false } });" name="dodaj" value="Dodaj do bazy">
  12. </form>
  13. </body>
  14. </html>

Domyślam się, że muszę zmienić tą linijkę:
  1. <form action="index.php?tresc=rejestracja" method="post">

Ale nie wiem co powinienem tu wpisać.


--------------------
Darmowy katalog ->http://katalogus.cba.pl
Go to the top of the page
+Quote Post
nospor
post 5.01.2012, 12:17:15
Post #2





Grupa: Moderatorzy
Postów: 36 557
Pomógł: 6315
Dołączył: 27.12.2004




Klikając submit wysyłasz formularz (strona sie przeladowuje) wiec nic dziwngo ze ci znika.

Blokada wysyłki z return false;
onclick="$.prompt('Example 2',{ buttons: { Ok: true, Cancel: false } });return false;"

A pod OK masz podpiąć submit formularza


--------------------

"Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista
"Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer

Go to the top of the page
+Quote Post
ublizzard
post 5.01.2012, 22:16:39
Post #3





Grupa: Zarejestrowani
Postów: 40
Pomógł: 1
Dołączył: 17.12.2011
Skąd: Lublin

Ostrzeżenie: (0%)
-----


Czyli powinienem raczej zrobić coś takiego:
  1. <button onclick="$.prompt('Example 2',{ buttons: { Ok: true, Cancel: false } });return false;" title="Example 1">Example 1</button><br />

Ale niestety nie mam pojęcia w jaki sposób podpiąć.

Stworzyłem coś takiego
  1. <button onclick="$.prompt('Example 2',{buttons: { Ok: true, Cancel: false }, callback: function(v,m,f){if (v){submit()} }});return false;" title="Example 1">Example 1</button><br />

Niby działa, tylko nie wiem, czy to poprawnie i czy nie wykrzaczy mi się kiedyś.

Obecnie dałem dwa buttony:
  1. <button onclick="$.prompt('Example 2',{buttons: { Ok: true, Cancel: false }, callback: function(v,m,f){if (v){submit()} }});return false;" type="submit" name="wykonaj" value="dodaj">Dodaj</button><br />
  2. <button onclick="$.prompt('Example 2',{buttons: { Ok: true, Cancel: false }, callback: function(v,m,f){if (v){submit()} }});return false;" type="submit" name="wykonaj" value="usun">Usun</button><br />


Mam jeszcze w tym zapisie problem z przekazaniem zmiennych name i value buttonu, który został wciśnięty, czy ktoś może mi pomóc z tym?
Zmienna $_POST['wykonaj'] nie istnieje, czyżby funkcja submit() nie przekazywała jej?



edit:
To może ktoś mi chociaż poradzi w jaki sposób odczytać po wysłaniu formularza za pomocą którego buttona został wysłany?


--------------------
Darmowy katalog ->http://katalogus.cba.pl
Go to the top of the page
+Quote Post
nospor
post 5.01.2012, 22:17:25
Post #4





Grupa: Moderatorzy
Postów: 36 557
Pomógł: 6315
Dołączył: 27.12.2004




pole ukryte, które wartość ustalasz tuż przed submit()


--------------------

"Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista
"Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer

Go to the top of the page
+Quote Post
ublizzard
post 5.01.2012, 22:51:28
Post #5





Grupa: Zarejestrowani
Postów: 40
Pomógł: 1
Dołączył: 17.12.2011
Skąd: Lublin

Ostrzeżenie: (0%)
-----


Już znalazłem rozwiązanie:
  1. <form action="index.php?tresc=rejestracja" method="post" name="form" >
  2. <input type="hidden" name="wykonaj" />
  3.  
  4. <input onclick="$.prompt('Example 2',{submit: function(v,m,f){if (v){document.forms['form'].wykonaj.value = 'wyslij' ; document.form.submit()}}, buttons: { Ok: true, Cancel: false } });return false;" type="submit" name="baton" value="Wyslij">
  5.  
  6. </form>



Ten post edytował ublizzard 5.01.2012, 23:01:47


--------------------
Darmowy katalog ->http://katalogus.cba.pl
Go to the top of the page
+Quote Post
nospor
post 5.01.2012, 23:00:56
Post #6





Grupa: Moderatorzy
Postów: 36 557
Pomógł: 6315
Dołączył: 27.12.2004




nadaj polu ID i odwoluj się do pola przy pomocy document.getElementById


--------------------

"Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista
"Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer

Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 12.06.2025 - 19:47