![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 9 Pomógł: 0 Dołączył: 16.11.2005 Ostrzeżenie: (0%) ![]() ![]() |
Witam wszystkich,
mam pewien problem z dzialaniem funkcji parseInt() : aby wyjasnic posluze sie niewielkim kodem : Kod <script type="text/javascript"> function toInt(){ var str = document.getElementById('edit').value; strValue = parseInt(str); document.getElementById('check1').value = str+"->"+strValue; } </script> <FORM NAME="forms"> <INPUT type='text' name="edit" id="edit" onkeyup="toInt()" size="10"> <INPUT type='text' name="check1" id="check1" disabled size='10'><br> </FORM> Dla wartosci 08 i 09 funkcja zwraca 0 (sprawdzenie w IE i FF), natomiast w Operze dziala OK! Dodam jeszcze ze dla wartosci 01...07 wynik jest poprawny(to znaczy zgodny z oczekiwaniami (IMG:http://forum.php.pl/style_emoticons/default/smile.gif) ) wszedzie . Gdzie lezy problem (IMG:http://forum.php.pl/style_emoticons/default/questionmark.gif) Ten post edytował Epoxy 16.11.2005, 19:53:03 |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Przyjaciele php.pl Postów: 1 717 Pomógł: 0 Dołączył: 12.06.2002 Skąd: Wolsztyn..... Studia: Zielona Góra Ostrzeżenie: (0%) ![]() ![]() |
Jesli w parsowanym stringu na poczatku jest zero to traktowany on jest jak by byl w systemie osemkowym, dlatego dzialaja tylko cyfry do 7. Zeby traktowac ta liczbe jako dziesietna musisz usunac te zero z przodu.
|
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 9 Pomógł: 0 Dołączył: 16.11.2005 Ostrzeżenie: (0%) ![]() ![]() |
Dziekuje (IMG:http://forum.php.pl/style_emoticons/default/smile.gif) dziala , parseInt() ma jeszce jeden parametr okreslajacy system liczbowy - wystarczylo ustawic dziesietny.
|
|
|
![]()
Post
#4
|
|
Grupa: Zarejestrowani Postów: 232 Pomógł: 1 Dołączył: 11.03.2003 Ostrzeżenie: (20%) ![]() ![]() |
używam 3 pól input i zamieniam na parseFloat
Za pierwszym razem wpisuję wartości w te pola w polu wynikowych jest wartość zmiennoprzecinkowa np 23.7 = 21.6 + 2.1 Natomiast kiedy ponownie zachce mi się zmienić wartośc w jednym z pól (inputowych) wartośc wynikowa przyjmuje postać ciągu 23.7000000001 . Jak się zabezpieczyć na tę ewentualność. Najśmieszniejsze jest tylko , że głupieje to dla dwóch wartości po przecinku (jeśli umieszczę 4 lub cyfrę 9) Dlaczego? Ten post edytował polibode 24.11.2005, 19:07:44 |
|
|
![]() ![]() |
![]() |
Aktualny czas: 23.08.2025 - 12:54 |