Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> zwykły <button> wysyła formularz :(
siutek
post 25.09.2017, 20:40:15
Post #1





Grupa: Zarejestrowani
Postów: 173
Pomógł: 1
Dołączył: 26.10.2005
Skąd: Toruń

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


Witam,
nie mogę sobie poradzić z jednym problemem.

Mam na stronie formularz, który jest wysyłany przez <button type="submit">
Jednak pomiędzy znacznikami <form></form> mam jeszcze jeden przycisk <button> tym razem bez żadnego typu tylko z onClickiem. Niestety wciśnięcie go (nawet gdy usunę onClick) powoduje wysłanie formularza :/
Chciałbym by funkcja wywoływana w onClicku zmieniała action="" forma i wysyłała wszystkie dane właśnie tam.

Poniżej kod stronki:

  1.  
  2. <!DOCTYPE html>
  3. <html lang="pl-PL">
  4. <title>system administracyjny</title>
  5. <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
  6. <link rel="stylesheet" type="text/css" href="css/style.css" media="screen,projection" />
  7. <script src="https://use.fontawesome.com/5ea45b0200.js"></script>
  8. <script type="text/javascript" src="./jscripts/scripts.js"></script>
  9. <script language="javascript" type="text/javascript" src="./jscripts/tiny_mce.js"></script>
  10.  
  11. <script language='javascript' type='text/javascript'>
  12. tinyMCE.init({
  13. mode : 'textareas',
  14. theme : 'advanced',
  15. content_css : './css/tinyContent.css',
  16. theme_advanced_toolbar_location : 'top',
  17. theme_advanced_buttons1 : 'bold,italic,underline',
  18. theme_advanced_buttons2 : '',
  19. theme_advanced_buttons3 : '',
  20. });
  21.  
  22. function fileBrowserCallBack(field_name, url, type, win) {
  23. var connector = '../../filemanager/browser.html?Connector=connectors/php/connector.php';
  24. var enableAutoTypeSelection = true;
  25.  
  26. var cType;
  27. tinyfck_field = field_name;
  28. tinyfck = win;
  29.  
  30. switch (type) {
  31. case 'image':
  32. cType = 'Image';
  33. break;
  34. case 'flash':
  35. cType = 'Flash';
  36. break;
  37. case 'file':
  38. cType = 'File';
  39. break;
  40. }
  41.  
  42. if (enableAutoTypeSelection && cType) {
  43. connector += '&Type=' + cType;
  44. }
  45.  
  46. window.open(connector, 'tinyfck', 'modal,width=600,height=400');
  47. }
  48.  
  49. </head>
  50. <div class="adminBody">
  51. <div class="topBar">
  52. <a href="./index.php" class="logo"></a>
  53. <ul class='menuHTML'><li><a href='./?page=posts'>Wpisy
  54. </a></li><li><a href='./?page=media'>Media
  55. </a></li><li><a href='./?page=menu'>menu</a></li><li><a href='./?page=users'>użytkownicy</a></li><li><a href='./?page=logout'>&nbsp;</a></li></ul> </div>
  56. <div class='postsDiv'><script>
  57. function addImageToPost(requiredModule,moduleName,sourceID,limitMedia,mediaType) {
  58. alert('dupa');
  59. document.forms['newPostForm'].action ='./?page=' + requiredModule + '&source=' + moduleName + '&sourceID=' + sourceID + '&postID=&limitMedia=' + limitMedia + '&mediaType=' + mediaType';
  60. document.forms['newPostForm'].submit();
  61. }
  62. </script><form action='./?page=posts' method='post' name='newPostForm'>
  63. <input type='hidden' name='act' value='save'>
  64. <div class='postFormContainer'>
  65. <input type='text' name='postTitle' placeholder='Tytuł wpisu' required='' value=''>
  66. <div class='postStatus'>Opublikowany: <input type='checkbox'></div>
  67. <div style='clear:both'></div>
  68. <div class='publicDate'></div>
  69. <textarea placeholder='Treść wpisu...' name='postContent' style='width:100%;'></textarea><div class='addImage'><button class='bttn newElement center' onClick='addImageToPost("media","posts",,1,"image");' title='przypisz zdjęcie'>Dodaj zdjęcie reprezentujące<i class='fa fa-plus-circle fa-lg' aria-hidden='true'></i></button></div><button type='submit' class='submit' name='act' value='save'>Zapisz<i class='fa fa-check fa-lg' aria-hidden='true'></i></button>
  70. </div></form></div> </div>
  71. </body>
  72. </html>

Go to the top of the page
+Quote Post
sabat24
post 25.09.2017, 20:47:59
Post #2





Grupa: Zarejestrowani
Postów: 175
Pomógł: 26
Dołączył: 13.09.2007
Skąd: Gdańsk

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


Zogdnie z np. tym

Cytat
The type of the button. Possible values are:
- submit: The button submits the form data to the server. This is the default if the attribute is not specified, or if the attribute is dynamically changed to an empty or invalid value.


Użyj np. type="button", żeby zmienić to zachowanie.
Go to the top of the page
+Quote Post
trueblue
post 25.09.2017, 20:49:15
Post #3





Grupa: Zarejestrowani
Postów: 6 806
Pomógł: 1828
Dołączył: 11.03.2014

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


A nie prościej wykorzystać atrybut formaction przycisku (input lub button) zamiast kombinować ze zmianą action?
https://www.w3schools.com/TAGs/att_input_formaction.asp


--------------------
Go to the top of the page
+Quote Post
siutek
post 25.09.2017, 20:56:41
Post #4





Grupa: Zarejestrowani
Postów: 173
Pomógł: 1
Dołączył: 26.10.2005
Skąd: Toruń

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


Cytat(trueblue @ 25.09.2017, 21:49:15 ) *
A nie prościej wykorzystać atrybut formaction przycisku (input lub button) zamiast kombinować ze zmianą action?
https://www.w3schools.com/TAGs/att_input_formaction.asp


hmmm... o tym atrybucie nie wiedziałem, już sprawdzam.

==========
edit:
genialne rozwiązanie!!! Dzięki! trueblue!

Ten post edytował siutek 25.09.2017, 21:23:52
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: 19.07.2025 - 07:44