Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [HTML][JavaScript]Problem z select i jquery
Forum PHP.pl > Forum > Przedszkole
elnino17
Co jest nie tak z kodem że nic nie wyświetla ? #ulga, jest utworzone
  1. $(document).ready(function () {
  2. switch (parseInt($('#ulga').val())) {
  3. case "a" :
  4. var cenaZulga = cenaPodstawowa;
  5. document.getElementById('cenaZulga').innerHTML = cenaZulga;
  6. break;
  7. case "b" :
  8. var cenaZulga = cenaPodstawowa*0.37;
  9. document.getElementById('cenaZulga').innerHTML = cenaZulga;
  10. break;
  11. case "c" :
  12. var cenaZulga = cenaPodstawowa*0.51;
  13. document.getElementById('cenaZulga').innerHTML = cenaZulga;
  14. break;
  15. case "d" :
  16. var cenaZulga = cenaPodstawowa*0.37;
  17. document.getElementById('cenaZulga').innerHTML = cenaZulga;
  18. break;
  19. default:
  20.  
  21. }

  1. <form action="#" onsubmit="showLocation(); return false;">
  2. <select id="ulga" name="ulga">
  3. <option value="a">-</option>
  4. <option value="b">Uczeń - ulga 37%</option>
  5. <option value="c">Student - ulga 51%</option>
  6. <option value="d">Emeryt - ulga 37%</option>
  7. </select>
  8. <tr>
  9. <td>Miejscowość początkowa</td>
  10. <td>
  11. <input type="text" name="address1" class="field">
  12. </td>
  13. </tr>
  14. <tr>
  15. <td>Miejscowość końcowa</td>
  16. <td>
  17. <input type="text" name="address2" class="field">
  18. </td>
  19. </tr>
  20. </table>
  21. <button type="submit" class="submit"><b>Zobacz cenę biletu</b></button>
  22. </form>
  23.  
  24.  
trueblue
Sprawdź co zwraca funkcja parseInt ze stringa typowo tekstowego.
elnino17
Zmieniłem ale wyświetla tylko wartość 10, mimo zmiany listy rozwijanej i wysłania formularza
  1. <!DOCTYPE html>
  2. <head>
  3. <title>Cennik biletów</title>
  4. <meta charset="UTF-8">
  5. <meta name="viewport" content="width=device-width, initial-scale=1.0">
  6. <script src="//code.jquery.com/jquery-1.10.2.js"></script>
  7. var cenaPodstawowa = 10.00;
  8. $(document).ready(function () {
  9. switch (parseInt($('#ulga').val())) {
  10. case 1 :
  11. var cenaZulga = cenaPodstawowa;
  12. document.getElementById('cenaZulga').innerHTML = cenaZulga;
  13. console.log(cenaZulga);
  14. break;
  15. case 2 :
  16. var cenaZulga = cenaPodstawowa*0.37;
  17. document.getElementById('cenaZulga').innerHTML = cenaZulga;
  18. console.log(cenaZulga);
  19. break;
  20. case 3 :
  21. var cenaZulga = cenaPodstawowa*0.51;
  22. document.getElementById('cenaZulga').innerHTML = cenaZulga;
  23. console.log(cenaZulga);
  24. break;
  25. case 4 :
  26. var cenaZulga = cenaPodstawowa*0.37;
  27. document.getElementById('cenaZulga').innerHTML = cenaZulga;
  28. console.log(cenaZulga);
  29. break;
  30.  
  31. }
  32. });
  33.  
  34.  
  35. </script>
  36. </head>
  37. <body>
  38. <form>
  39. <select id="ulga">
  40. <option value="01">-</option>
  41. <option value="02">Uczeń - ulga 37%</option>
  42. <option value="03">Student - ulga 51%</option>
  43. <option value="04">Emeryt - ulga 37%</option>
  44. </select>
  45. <a href="#">Open</a>
  46. </form>
  47. <h1 id="cenaZulga"></h1>
  48.  
  49. </body>
  50. </html>
  51.  
ber32
Zrób tak
do każdego tego elementu przypisz inną cenę np
  1. document.getElementById('cenaZulga').innerHTML = 5;

potem zmień wszystkie value="01" na value="1" itd...
i napisz czy ok
elnino17
Zrobiłem tak:
  1. case 2 :
  2. var cenaZulga = cenaPodstawowa;
  3. document.getElementById('cenaZulga').innerHTML = 27;
  4. console.log(cenaZulga);
  5. break;

  1. <option value = "2">Uczeń - ulga 37%</option>

i nie działa.
ber32
No i co zero inicjatywy. ohno-smiley.gif

  1. <!DOCTYPE html>
  2. <title>Cennik biletów</title>
  3. <meta charset="UTF-8">
  4. <meta name="viewport" content="width=device-width, initial-scale=1.0">
  5. <script src="//code.jquery.com/jquery-1.10.2.js"></script>
  6. $(document).ready(function () {
  7. var cenaPodstawowa = 10.00;
  8. $( "select" )
  9. .change(function() {
  10. $('#ulga option:selected').each(function() {
  11. var x = $( this ).val();
  12. switch (parseInt(x)) {
  13. case 1 :
  14. var cenaZulga = cenaPodstawowa;
  15. $( "#cenaZulga" ).text( cenaZulga );
  16. console.log(cenaZulga);
  17. break;
  18. case 2 :
  19. var cenaZulga = cenaPodstawowa*0.37;
  20. $( "#cenaZulga" ).text( cenaZulga );
  21. console.log(cenaZulga);
  22. break;
  23. case 3 :
  24. var cenaZulga = cenaPodstawowa*0.51;
  25. $( "#cenaZulga" ).text( cenaZulga );
  26. console.log(cenaZulga);
  27. break;
  28. case 4 :
  29. var cenaZulga = cenaPodstawowa*0.399;
  30. $( "#cenaZulga" ).text( cenaZulga );
  31. console.log(cenaZulga);
  32. break;
  33. }
  34. });
  35. });
  36. });
  37. </head>
  38. <select id="ulga">
  39. <option value="01">-</option>
  40. <option value="02">Uczeń - ulga 37%</option>
  41. <option value="03">Student - ulga 51%</option>
  42. <option value="04">Emeryt - ulga 37%</option>
  43. <a href="#">Open</a>
  44. </form>
  45. <h1 id="cenaZulga"></h1>
  46.  
  47. </body>
  48. </html>


I daj więcej ulgi na emerytów bo są biedni na leki nie mają, a dla studentów przynajmniej 90% oneeyedsmiley02.png
elnino17
Dzięki, wszystko działa, temat do zamknięcia smile.gif
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.