Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [Javascript] Zmiana obrazka i checkboxa z przekazaniem zmienych - beginner ;-)
Forum PHP.pl > Forum > Po stronie przeglądarki > JavaScript
messmaker
Jakiś czas temu pytałem o przekazywanie zmiennych do funkcji w JS, coś pokleiłem ale za chiny nie chce mi to działać tak jak powinno. Oto kod:

  1. <script type="text/javascript">
  2. function changePic(item,icon){
  3. if ('c' + item.checked){
  4. document.'i' + item.src="icon + '_c'.gif";
  5. }else{
  6. document.'i' + item.src="icon + '_u'.gif";
  7. }
  8. }</script>
  9. </head>
  10. <body bgcolor="#FFFFFF" leftmargin="0" topmargin="0" marginwidth="0" marginheight="0">
  11. <form name="form1" method="post" action="">
  12. <img src="5_u.gif" name="i1">
  13. <input type="checkbox" name="c1" value="checkbox" onClick="changePic(1,5);">
  14. </form>
  15. </body>


Mam nadzieję, że w miarę czytelny. Można prosić o pomoc?
skowron-line
  1. <script type="text/javascript">
  2. function changePic(item,icon){
  3. if ('c' + item.checked){
  4. document.getElementById( 'i' + item ).src="icon + '_c'.gif";
  5. }else{
  6. document.getElementById( 'i' + item ).src="icon + '_u'.gif";
  7. }
  8. }</script>
  9. </head>
  10. <body bgcolor="#FFFFFF" leftmargin="0" topmargin="0" marginwidth="0" marginheight="0">
  11. <form name="form1" method="post" action="">
  12. <img src="5_u.gif" name="i1" id="i1">
  13. <input type="checkbox" name="c1" value="checkbox" onClick="changePic(1,5);">
  14. </form>
  15. </body>

można tak, lub jak nie chcesz używać id to poczytaj o document.getElementsByTagName
messmaker
Wkleiłem i coś już się zaczęło dziać, ale po kliknięciu w czekboks zmienia src obrazka na icon%20+%20'_c'.gif ohmy.gif
skowron-line
Cytat(messmaker @ 23.03.2009, 15:27:37 ) *
Wkleiłem i coś już się zaczęło dziać, ale po kliknięciu w czekboks zmienia src obrazka na icon%20+%20'_c'.gif ohmy.gif

%20 to spacja.

żebyś się nie głowił

Kod
"icon + '_u'.gif";

na
Kod
icon + '_u'.gif";
wookieb
...
Kod
icon+'_u.gif';
messmaker
Wsadziłem:

  1. <script type="text/javascript">
  2. function changePic(item,icon){
  3. if ('c' + item.checked){
  4. document.getElementById( 'i' + item ).src=icon+'_c.gif';
  5. }else{
  6. document.getElementById( 'i' + item ).src=icon+'_u.gif';
  7. }
  8. }</script>
  9. </head>
  10. <body bgcolor="#FFFFFF" leftmargin="0" topmargin="0" marginwidth="0" marginheight="0">
  11. <form name="form1" method="post" action="">
  12. <img src="5_u.gif" name="i1" id="i1">
  13. <input type="checkbox" name="c1" value="checkbox" onClick="changePic(1,5);">
  14. </form>
  15. </body>
  16. </html>


i przy każdym kliknięciu na checkbox (zaznaczającym lub nie) ustawiany jest 5_c.gif. 5_c to animacja "zaznaczania", 5_u to obrazek sygnalizujący brak zaznaczenia, obecnie każde kliknięcie w CB powoduje wywołanie animacji zaznaczania na obrazku.




EDIT: udało się smile.gif

  1. <script type="text/javascript">
  2. function changePic(item,icon){
  3. if (document.getElementById( 'c' + item ).checked){
  4. document.getElementById( 'i' + item ).src=icon+'_c.gif';
  5. }else{
  6. document.getElementById( 'i' + item ).src=icon+'_u.gif';
  7. }
  8. }</script>
  9. </head>
  10. <body bgcolor="#FFFFFF" leftmargin="0" topmargin="0" marginwidth="0" marginheight="0">
  11. <form name="form1" method="post" action="">
  12. <img src="5_u.gif" id="i1">
  13. <input type="checkbox" id="c1" value="checkbox" onClick="changePic(1,5);">
  14. </form>
  15. </body>
  16. </html>
wookieb
A po co ci to 'c' +?
Popraw analogicznie do poprzedniej poprawki.
I nie mow ze nie umiesz bo wystarczy sie troche zastanowic.
skowron-line
  1. <script type="text/javascript">
  2. function changePic(item,icon){
  3.  
  4.  
  5. if (document.getElementById( 'c' + item ).checked){
  6. document.getElementById( 'i' + item ).src=icon+'_c.gif';
  7. }else{
  8. document.getElementById( 'i' + item ).src=icon+'_u.gif';
  9.  
  10. }
  11. }</script>
  12. </head>
  13. <body bgcolor="#FFFFFF" leftmargin="0" topmargin="0" marginwidth="0" marginheight="0">
  14. <form name="form1" method="post" action="">
  15. <img src="5_u.gif" name="i1" id="i1">
  16. <input type="checkbox" name="c1" id="c1" value="checkbox" onClick="changePic(1,5);">
  17. </form>
  18. </body>
  19. </html>
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.