Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [javscript] problem z zdziałaniem skryptu
The Night Shadow
post 22.06.2007, 19:32:44
Post #1





Grupa: Zarejestrowani
Postów: 495
Pomógł: 2
Dołączył: 5.02.2006
Skąd: Wrocław

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


  1. <script type="text/javascript" language="JavaScript">
  2.  
  3. function parseToFloat(number)
  4. {
  5. var output, str;
  6.  
  7. // parsujemy na float
  8. output = parseFloat(number)
  9. str = String(output);
  10.  
  11. // jesli zwrocony string jest bez kropki
  12. if(str.lastIndexOf('.') == -1)
  13. {
  14. str += '.00';
  15. }
  16. else
  17. if ( (str.length - str.lastIndexOf('.')) == 2 )
  18. {
  19. str += '0';
  20. }
  21.  
  22. return(str);
  23. }
  24.  
  25. function zmien(id)
  26. {
  27. if (id.form['wysylka'].wysylka[0].checked==true)
  28. {
  29. id.form['suma'].value = parseToFloat(parseFloat(12) + parseFloat(id.form['zamowienie'].value));
  30. id.form['dostawa'].value = parseToFloat(parseFloat(12));
  31. }
  32. if (id.form['wysylka'].wysylka[1].checked==true)
  33. {
  34. id.form['suma'].value = parseToFloat(parseFloat(45) + parseFloat(id.form['zamowienie'].value));
  35. id.form['dostawa'].value = parseToFloat(parseFloat(45));
  36. }
  37. if (id.form['wysylka'].wysylka[2].checked==true)
  38. {
  39. id.form['suma'].value = parseToFloat(parseFloat(48.96) + parseFloat(id.form['zamowienie'].value));
  40. id.form['dostawa'].value = parseToFloat(parseFloat(48.96));
  41. }
  42. if (id.form['wysylka'].wysylka[3].checked==true)
  43. {
  44. id.form['suma'].value = parseToFloat(parseFloat(0) + parseFloat(id.form['zamowienie'].value));
  45. id.form['dostawa'].value = parseToFloat(parseFloat(0));
  46. }
  47. }
  48.  
  49. </script>


Dlaczego powyższy skrypt nie działą pod przeglądarką FF? W IE oraz Operze wszystko jest w porządku.


  1. <input type="radio" name="wysylka" value="1" onclick="zmien(this)" checked> Wysyłka pocztą polską - wpłata na konto<br />
  2. <input type="radio" name="wysylka" value="2" onclick="zmien(this)"> Wysyłka pocztą polską - płatność przy odbiorze<br />
  3. <input type="radio" name="wysylka" value="3" onclick="zmien(this)"> Wysyłka - kurier - wpłata na konto<br />
  4. <input type="radio" name="wysylka" value="4" onclick="zmien(this)"> Odbiór osobisty - płatność przy odbiorze

Jego zdaniem jest dynamiczna zmiana pól w zależności od wartości wybranej w polu checkbox.


--------------------
Programista Stron i Serwisów WWW oraz Aplikacji Internetowych
Specjalista ds. Pozycjonowania Aplikacji Internetowych
Copywriter
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 1)
abc667
post 22.06.2007, 20:02:24
Post #2





Grupa: Zarejestrowani
Postów: 229
Pomógł: 0
Dołączył: 29.05.2007

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


  1. function zmien(id)
  2. {
  3. if (id.form['wysylka'][0].checked==true)
  4. {
  5. id.form['suma'].value = parseToFloat(parseFloat(12) + parseFloat(id.form['zamowienie'].value));
  6. id.form['dostawa'].value = parseToFloat(parseFloat(12));
  7. }
  8. if (id.form['wysylka'][1].checked==true)
  9. {
  10. id.form['suma'].value = parseToFloat(parseFloat(45) + parseFloat(id.form['zamowienie'].value));
  11. id.form['dostawa'].value = parseToFloat(parseFloat(45));
  12. }
  13. if (id.form['wysylka'][2].checked==true)
  14. {
  15. id.form['suma'].value = parseToFloat(parseFloat(48.96) + parseFloat(id.form['zamowienie'].value));
  16. id.form['dostawa'].value = parseToFloat(parseFloat(48.96));
  17. }
  18. if (id.form['wysylka'][3].checked==true)
  19. {
  20. id.form['suma'].value = parseToFloat(parseFloat(0) + parseFloat(id.form['zamowienie'].value));
  21. id.form['dostawa'].value = parseToFloat(parseFloat(0));
  22. }
  23. }
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 - 08:32