Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Wykrycie jakie guziki są wciskane
Forum PHP.pl > Forum > Po stronie przeglądarki > JavaScript
fizzlebubble
Witajcie,
Piszę dla funu prosty kalkulator w js i chciałbym wykryć i przekazać do funkcji dodaj() trzy kolejne wciśnięte guziki. Jak to mogę zrobić?
markonix
Na dziesiątki sposobów.

Po pierwsze skonkretyzuj co rozumiesz przez wykrycie - pobranie do nich referencji, pobranie klasy czy innego atrybutu, pobranie zawartości?
fizzlebubble
Planuję zrobić formę z 15 buttonami (0-9, +,-,*,/ i =), a następnie do funkcji przypisanych do buttonów np dodawania przekazywać wciśnięte guziki i wartość wyświetlić jako value inputa ala ekran, więc referencja chyba będzie ok, gdy każdy guzik ma osobne id, ewentualnie jak Ty byś to rozwiązał?
markonix
A jak wygląda HTML inputów?
fizzlebubble
  1. <form action="index.php" method="post">
  2. <input type="text" id="ekran" value="0" readonly="readonly" size="35" /><br/>
  3.  
  4.  
  5. <input type="button" class="button" value="1" id="1"/> <input type="button" class="button" value="2" id="2"/> <input type="button" class="button" value="3" id="3"/>
  6. <input type="button" class="button" value="+" id="dodawanie" onclick="jakasfunkcja();"/>
  7. <input type="button" class="button" value="=" id="wynik"/>
  8.  
  9. </form>
markonix
http://jsfiddle.net/Qx67G/1/
Niktoś
Malutkie sprostowanie do tego przykładu- id nie powinno rozpoczynać się lub być liczbą.
markonix
Id tak w ogóle nie jest potrzebne.
fizzlebubble
Ok, dziękuję za radę smile.gif. Mam już pomysł jak rozwiązać cały kalkulator, przy użyciu sposobu markonixa wpiszę poszczególne liczby do tablicy, a samymi funkcjami będę już operować na indeksach.

Myślę jeszcze jak rozwiązać problem większych liczby, bo jeśli np chciałbym dodać liczby 100 i 200 to w tablicy miałbym już 6 wartości, chyba że buttonami wprowadzać wartość do osobnego inputa, jak np ekran, a znak dodawania sumowałby całą wartość i przypisywał już do zmiennej. Dobrze kombinuję?
markonix
Znalazłbyś pewnie nie jeden gotowiec do podpatrzenia.

Ja bym zrobił tak, że gdy zmienna jest liczbą to do tablicy.
Gdy zmienna nie jest liczbą przypisz ją do zmiennej "dzialanie".
I potem analogicznie druga liczba.

Tablicę liczb w jedną liczbę, switch przy działaniach i wyświetlenie wyniku.
fizzlebubble
Już wiem jak sobie poradzić! smile.gif. Markonix zasłużyłeś na ogromnego plusa, dziękuję!
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.