Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [JavaScript] Generator posta w BBCode
Forum PHP.pl > Forum > Przedszkole
Morthi
Cześć, zrobiłem właśnie w JavaScripcie prosty generator z formularzem.
Ma to za zadanie generowac gotowy kod BBCode do skopiowania i wklejenia na forum.

Działa bez zarzutów z wyjątkiem pól wybory (type="radio").
Problem polega na tym, iż zamiast tego co podane jest w value="" w okienku obok z gotowym kodem zwraca wynik "undefined"

Generator można zobaczyć pod tym linkiem

Natomiast tutaj przedstawiam kod owego generatora
  1. <script type="text/javascript">function generuj()
  2. {
  3. var pyt1 = document.generator.pyt1.value;
  4. var pyt2 = document.generator.pyt2.value;
  5. var pyt3 = document.generator.pyt3.value;
  6. var pyt4 = document.generator.pyt4.value;
  7. var pyt5 = document.generator.pyt5.value;
  8. var pyt6 = document.generator.pyt6.value;
  9. var pyt7 = document.generator.pyt7.value;
  10. var pyt8 = document.generator.pyt8.value;
  11. var pyt9 = document.generator.pyt9.value;
  12. var pyt10 = document.generator.pyt10.value;
  13. var pyt11 = document.generator.pyt11.value;
  14. var pyt12 = document.generator.pyt12.value;
  15. var pyt13 = document.generator.pyt13.value;
  16. var code = '';
  17. if(pyt1 != '')
  18. code = '[ b]Pytanie 1:[/b] '+pyt1+'\n\n';
  19. if(pyt2 != '')
  20. code = code+'[ b]Pytanie 2:[/b] '+pyt2+'\n\n';
  21. if(pyt3 != '')
  22. code = code+'[ b]Pytanie 3:[/b] '+pyt3+'\n\n';
  23. if(pyt4 != '')
  24. code = code+'[ b]Pytanie 4:[/b] '+pyt4+'\n\n';
  25. if(pyt5 != '')
  26. code = code+'[ b]Pytanie 5:[/b] '+pyt5+'\n\n';
  27. if(pyt6 != '')
  28. code = code+'[ b]Pytanie 6:[/b] '+pyt6+'\n\n';
  29. if(pyt7 != '')
  30. code = code+'[ b]Pytanie 7:[/b] '+pyt7+'\n\n';
  31. if(pyt8 != '')
  32. code = code+'[ b]Pytanie 8:[/b] '+pyt8+'\n\n';
  33. if(pyt9 != '')
  34. code = code+'[ b]Pytanie 9:[/b] '+pyt9+'\n\n';
  35. if(pyt10 != '')
  36. code = code+'[ b]Pytanie 10:[/b] '+pyt10+'\n\n';
  37. if(pyt11 != '')
  38. code = code+'[ b]Pytanie 11:[/b] '+pyt11+'\n\n';
  39. if(pyt12 != '')
  40. code = code+'[ b]Pytanie 12:[/b] '+pyt12+'\n\n';
  41. if(pyt13 != '')
  42. code = code+'[ b]Pytanie 13:[/b] '+pyt13;
  43.  
  44. document.generator.kod.value = code;
  45. return false;
  46. }
  47.  
  48. <form action="test.html" method="post" name="generator" onsubmit="java script: return generuj();">
  49. <table width="100%" border="0" cellpadding="1" cellspacing="1">
  50. <tr>
  51. <td width="23%" align="center"><span>Pytanie 1: </span></td>
  52. <td width="25%"><input type="text" onkeyup="generuj();" value="" size="40" maxlenght="255" name="pyt1"></td>
  53. <td width="52%" rowspan="12"><textarea style="width: 100%" name="kod" rows="26" readonly></textarea></td>
  54. </tr>
  55. <tr>
  56. <td align="center"><span>Pytanie 2: </span></td>
  57. <td><input type="text" onkeyup="generuj();" value="" size="40" maxlenght="255" name="pyt2"></td>
  58. </tr>
  59. <tr>
  60. <td align="center"><span>Pytanie 3: </span></td>
  61. <td><input type="text" onkeyup="generuj();" value="" size="40" maxlenght="255" name="pyt3"></td>
  62. </tr>
  63. <tr>
  64. <td align="center"><span>Pytanie 4: </span></td>
  65. <td><input type="text" onkeyup="generuj();" value="" size="40" maxlenght="255" name="pyt4"></td>
  66. </tr>
  67. <tr>
  68. <td align="center"><span>Pytanie 5: </span></td>
  69. <td><input type="text" onkeyup="generuj();" value="" size="40" maxlenght="255" name="pyt5"></td>
  70. </tr>
  71. <tr>
  72. <td align="center"><span>Pytanie 6: </span></td>
  73. <td><input type="text" onkeyup="generuj();" value="" size="40" maxlenght="255" name="pyt6"></td>
  74. </tr>
  75. <tr>
  76. <td align="center"><span>Pytanie 7: </span></td>
  77. <td><input type="radio" onkeyup="generuj();" name="pyt7" value="Odpowiedz 1" />Odpowiedz 1 <br />
  78. <input type="radio" onkeyup="generuj();" name="pyt7" value="Odpowiedz 2" />Odpowiedz 2 <br />
  79. <input type="radio" onkeyup="generuj();" name="pyt7" value="Odpowiedz 3" />Odpowiedz 3 <br />
  80. <input type="radio" onkeyup="generuj();" name="pyt7" value="Odpowiedz 4" />Odpowiedz 4 <br />
  81. <input type="radio" onkeyup="generuj();" name="pyt7" value="Odpowiedz 5" />Odpowiedz 5 </td>
  82. </tr>
  83. <tr>
  84. <td align="center"><span>Pytanie 8: </span></td>
  85. <td><input type="radio" onkeyup="generuj();" name="pyt8" value="Tak" /> Tak
  86. <input type="radio" onkeyup="generuj();" name="pyt8" value="Nie" /> Nie</td>
  87. </tr>
  88. <tr>
  89. <td align="center"><span>Pytanie 9: </span></td>
  90. <td><input type="radio" onkeyup="generuj();" name="pyt9" value="Tak" /> Tak
  91. <input type="radio" onkeyup="generuj();" name="pyt9" value="Nie" /> Nie</td>
  92. </tr>
  93. <tr>
  94. <td align="center"><span>Pytanie 10: </span></td>
  95. <td><textarea onkeyup="generuj();" rows="2" cols="31" name="pyt10"></textarea></td>
  96. </tr>
  97. <tr>
  98. <td align="center"><span>Pytanie 11: </span></td>
  99. <td><textarea onkeyup="generuj();" rows="2" cols="31" name="pyt11"></textarea></td>
  100. </tr>
  101. <tr>
  102. <td align="center"><span>Pytanie 12: </span></td>
  103. <td><input type="text" onkeyup="generuj();" value="" size="40" maxlenght="255" name="pyt12"></td>
  104. </tr>
  105. <tr>
  106. <td align="center"><span>Pytanie 13: </span></td>
  107. <td><input type="radio" onkeyup="generuj();" name="pyt13" value="Odpowiedz 1" /> Odpowiedz 1
  108. <input type="radio" onkeyup="generuj();" name="pyt13" value="Odpowiedz 2" /> Odpowiedz 2</td>
  109. <td align="center"><input type="button" value="Zaznacz wszystko" onclick="java script:this.form.kod.focus();this.form.kod.select();" style="cursor:pointer" /></td>
  110. </tr>
  111. </form>
papryk
Problem wynika z użycia takiej samej nazwy dla wielu pól. Wyświetla wartość 'undefined' ponieważ skrypt nie wie którą wartość wziąć. Proponuję zmienić ich nazwy i powinno działać. Pozdrawiam.
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.